awesome-microservices
A curated list of Microservice Architecture related principles and technologies.
A curated link directory of tools, frameworks, and reading material for building microservice architectures, organized by programming language and concern like messaging, monitoring, and security.
This repository is a curated list of principles and technologies related to microservice architecture. It follows the awesome-list format, so it is not software you run but a categorized directory of links, each with a short description, pointing to tools, frameworks, and reading material kept elsewhere. Microservice architecture is a way of building an application as many small, independent services that each handle one job and talk to each other over a network, instead of as a single large program. The list gathers the pieces people commonly use to build systems that way.
The contents are grouped into broad sections. Platforms and Frameworks or Runtimes list the foundations on which services are built, such as Akka, Micronaut, Dapr, and the gRPC communication framework. A large Service Toolkits section is split by programming language, with separate groups for C, C++, C#, Go, Java, Node.js, Python, Ruby, Rust, and others, so you can find tools that match the language you already work in.
A Capabilities section covers the supporting concerns that come up when running many services at once. These include API gateways that sit at the edge, configuration and service discovery, workflow orchestration, logging, messaging between services, monitoring and debugging, resilience, security, storage, and testing. Further sections address continuous integration and delivery, ways to model and document web APIs (including REST and GraphQL), and published standards and recommendations covering HTTP, RPC, data formats, and security.
The final sections move beyond tools to the human and conceptual side, with entries on organization design and team dynamics, enterprise use, and a Theory section linking to articles, papers, and organizations. You would use this collection as a starting map when planning or building a microservice system and want a curated set of options in one place. The full README is longer than what was shown.
Where it fits
- Find an API gateway or service mesh for your microservice project by browsing the curated tools section.
- Discover logging, monitoring, and resilience tools when planning the operational side of a distributed system.
- Browse language-specific service toolkits for Go, Python, or Node.js when starting a new microservice.