Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/arumandesu/uniclubs-comments-service
This is a simple comments service for AITU UCMS project. The service allows users to leave comments on the content of the UCMS.
https://github.com/arumandesu/uniclubs-comments-service
go golang mongodb rabbitmq websockets
Last synced: 5 days ago
JSON representation
This is a simple comments service for AITU UCMS project. The service allows users to leave comments on the content of the UCMS.
- Host: GitHub
- URL: https://github.com/arumandesu/uniclubs-comments-service
- Owner: ARUMANDESU
- Created: 2024-06-29T09:28:25.000Z (5 months ago)
- Default Branch: dev
- Last Pushed: 2024-07-28T19:52:28.000Z (4 months ago)
- Last Synced: 2024-07-28T20:54:31.733Z (4 months ago)
- Topics: go, golang, mongodb, rabbitmq, websockets
- Language: Go
- Homepage:
- Size: 153 KB
- Stars: 0
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
Table of Contents
## About The Project
[//]: # ([![Product Name Screen Shot][product-screenshot]](https://example.com))
This is a simple comments service for [AITU UCMS][aitu-ucms-url] project. It is a part of the project, which is a web application for managing the university's clubs. The service allows users to leave comments on the content of the [AITU UCMS][aitu-ucms-url].
### Built With
* [![Go][go-shield]][go-url]
* [![MongoDB][mongodb-shield]][mongodb-url]
* [![Docker][docker-shield]][docker-url]
* [![Docker Compose][docker-compose-shield]][docker-compose-url]
* [![RabbitMQ][rabbitmq-shield]][rabbitmq-url]
* [![Centrifuge][centrifuge-shield]][centrifuge-url]
* [![GRPC][grpc-shield]][grpc-url]## Protofiles
* [Protofiles Repository][protofiles-url]
## [Websockets API](docs/websocket.md)
## Getting Started
### Prerequisites* Go version 1.22.3
* Docker 26.1.4
* Docker Compose 2.27.1
* [Taskfile 3](https://taskfile.dev/installation/)```sh
go version
docker --version
docker-compose --version
```### Installation
1. Clone the repo
```sh
git clone https://github.com/ARUMANDESU/uniclubs-comments-service.git
```
2. Change directory
```sh
cd uniclubs-comments-service
```
3. Write the environment variables in the `.env` file
```dotenv
ENV=devSTART_TIMEOUT=
SHUTDOWN_TIMEOUT=
HTTP_ADDRESS=
HTTP_TIMEOUT=
HTTP_IDLE_TIMEOUT=
GRPC_PORT=
GRPC_TIMEOUT=
MONGODB_URI=mongodb://:@:
MONGODB_PING_TIMEOUT=10s
MONGODB_DATABASE_NAME=
RABBITMQ_USER=
RABBITMQ_PASSWORD=
RABBITMQ_HOST=
RABBITMQ_PORT=
USER_SERVICE_ADDRESS=:
USER_SERVICE_TIMEOUT=10s
USER_SERVICE_RETRIES_COUNT=2JWT_SECRET=
```
4. Run the service
```sh
task r:e
```[aitu-url]: https://astanait.edu.kz/
[aitu-ucms-url]: https://www.ucms.space/
[protofiles-url]: https://github.com/ARUMANDESU/uniclubs-protos[go-url]: https://golang.org/
[mongodb-url]: https://www.mongodb.com/
[docker-url]: https://www.docker.com/
[docker-compose-url]: https://docs.docker.com/compose/
[rabbitmq-url]: https://www.rabbitmq.com/
[websockets-url]: https://developer.mozilla.org/en-US/docs/Web/API/WebSockets_API
[centrifuge-url]: https://github.com/centrifugal/centrifuge
[grpc-url]: https://grpc.io/[go-shield]: https://img.shields.io/badge/Go-00ADD8?style=for-the-badge&logo=go&logoColor=white
[mongodb-shield]: https://img.shields.io/badge/MongoDB-47A248?style=for-the-badge&logo=mongodb&logoColor=white
[docker-shield]: https://img.shields.io/badge/Docker-2496ED?style=for-the-badge&logo=docker&logoColor=white
[docker-compose-shield]: https://img.shields.io/badge/Docker_Compose-2496ED?style=for-the-badge&logo=docker&logoColor=white
[rabbitmq-shield]: https://img.shields.io/badge/RabbitMQ-FF6600?style=for-the-badge&logo=rabbitmq&logoColor=white
[websockets-shield]: https://img.shields.io/badge/Websockets-777777?style=for-the-badge&logo=websocket&logoColor=white
[centrifuge-shield]: https://img.shields.io/badge/Centrifuge-FF6600?style=for-the-badge&logo=centrifuge&logoColor=white
[grpc-shield]: https://img.shields.io/badge/GRPC-00ADD8?style=for-the-badge&logo=grpc&logoColor=white