clusterO / SCM

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

SCM - Go Microservices Boilerplate with GQL MongoDB & gRPC

SCM is a Go microservices boilerplate that provides a foundation for building scalable and modular applications using GraphQL, MongoDB, and gRPC. It includes the necessary components and libraries to get started quickly.

Prerequisites

Make sure you have the following prerequisites installed:

  • Go Kit: A toolkit for building microservices in Go.
  • GrantZheng/kit: A library that complements Go Kit and provides additional utilities.
  • GraphQL: An implementation of GraphQL in Go.
  • MongoDB: The official MongoDB driver for Go.

Usage

  1. Clone the repository: git clone https://github.com/scm.git
  2. Install the project dependencies using Glide: glide install
  3. Run the project: go run .
  4. Call the DB service using curl: curl -XPOST -d'{"Username":"admin"}' localhost:8080/get_by_username

Resources

To learn more about the components used in this project, you can refer to the following resources:

Project Importance

The SCM boilerplate provides a solid foundation for building microservices-based applications with a focus on scalability, modularity, and ease of development. It integrates popular technologies such as GraphQL, MongoDB, and gRPC, allowing developers to quickly build robust and efficient applications.

What's Next

The project is actively maintained and open to contributions. Some potential areas of improvement and future enhancements include:

  • Adding more examples and usage scenarios
  • Enhancing security measures
  • Integrating additional databases or message brokers
  • Providing more extensive documentation and tutorials
  • DevOps integration

Feel free to contribute to the project by submitting pull requests or opening issues for bug reports or feature requests.

Advanced topics

  • Threading a context
  • Distributed tracing

About


Languages

Language:Go 100.0%