{"repo":"Pradumnasaraf/Contributors","free":true,"listed":false,"github":"https://github.com/Pradumnasaraf/Contributors","clone":"git clone https://github.com/Pradumnasaraf/Contributors.git","description":"Contributors is a GraphQL API written in Go. It stores data in MongoDB and uses Redis to cache and rate-limit requests. For monitoring, it uses Prometheus (Custom Metrics) and Grafana.","language":"Go","stars":25,"topics":["go","mongodb","gin","golang","docker","graphql","docker-images","kubernetes","redis","hacktoberfest"],"license":"GPL-3.0","category":"deployment-docker-iac","readme_excerpt":"Contributors Contributors is a GraphQL API written in Go. It stores data in MongoDB and uses Redis to cache and rate-limit requests. For monitoring, it integrates with Prometheus (Custom Metrics) and Grafana. The purpose of this API is to store open-source contributors and their contributions to various projects. https://github.com/user-attachments/assets/49bb79f6-5d63-4ab5-b7b3-92b9bcb783db Using and Developing Local Development Prerequisites To run the project locally, ensure you have the following installed: - Golang - MongoDB - Redis - Prometheus and Grafana (Only if you need monitoring) Note: Redis, Prometheus, and Grafana can be run using Docker. It's not feasible to run some services in Docker and others locally. For consistency, it is recommended to use Docker Compose to run all services. Steps for Local Setup 1. Copy the .env.example file to .env and update the values with your own configuration. Use the following bash command: 2. Install dependencies and start the server: 3. Access the API at http://localhost:8080/ . Docker Compose Prerequisites Make sure you have the following installed: - Docker - Docker Compose (Docker Compose is included with Docker Desktop) Steps for Docker Compose Setup 1. Run the following command to start the services, including MongoDB, the Go API, Prometheus, and Grafana: 2. If you're using the latest version of Docker Compose, you can leverage the Compose Watch feature. This will automatically rebuild the application when code changes are","default_branch":null,"files":null,"tree":[],"storefront":"/r/Pradumnasaraf","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/Pradumnasaraf/Contributors/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}