awesome-software-architecture README

The project's README from github.com/mehdihadeli/awesome-software-architecture. As one markdown file: README.md.

Awesome Architecture

A searchable guide to software architecture patterns, systems, AI engineering, and practical resources.

Open the web experience

Explore Awesome Architecture

The repository is the source catalog. The web app turns it into a reader-friendly experience with searchable collections, clickable subcollections, topic pages, resource-type filters, and direct links to every reference.

Awesome Architecture web home showing searchable collections and resource filters

Use the Awesome Architecture web app for fast browsing. Use the table below for a lightweight map of the catalog.

Catalog Tree

The web app uses the same hierarchy shown below: collection → subcollection → topic area. Each link opens the matching Markdown folder or topic.

CollectionSubcollectionsTopics
AI - A2A · ACP · Agent · Agents Coding · AI Design · AI Gateway · AI Infrastructure · AI Security · AI Tools · AI · Context · .NET AI Tools · Embedding Vector · Evaluation Test · Graph Database · Harness Engineering · Lamma.cpp · Langchain · Loop Engineering · MCP · MEAI · Memory · Microsoft Agent Framework · ML.NET · Models · Ollama · Prompt Engineering · Python AI Tools · RAG · Semantic Kernel · Skills Subagents Plugins · vLLM
Cloud Platforms Azure · Cloud Patterns · IaaS · Networking · PaaS AKS · API Management · App Service Plan · App Service · Arc · Cloud · Configuration · Functions · Load Balancing · Logic App · Resource Manager · Resource · Active Directory · Key Vault · SQL · Event Grid · Event Hub · Queue · Service Bus · Web Pub Sub · Messaging · NoSQL · Cosmos DB · Service Fabric · Blob · File · Queue · Storage · Table · Cloud Best Practices · Cloud Native · Ambassador Pattern · Anti Corruption Layer Pattern · BFF · Bulkhead Pattern · Circuit Breaker · Cloud Design Patterns · Exactly One Delivery · Gateway Aggregation · Gateway Pattern · Inbox Pattern · Outbox Pattern · Sidecar · Strangler Fig Pattern · Ansible · IaaS · Nomad · Pulumi · Terraform · Envoy · Fabio · Haproxy · Load Balancing · Metallb · Nginx · Reverse Proxy · Traefik · Yarp · Heroku · Netlify · Openshift · Rancher · Serverless
Data Databases Caching · Data Driven Design · Cosmos DB · Documentdb · MongoDB · NoSQL · Ravendb · Postgres · Relational Database · SQL · Replication · Sharding · IDs
Devops CI/CD · Docker · Kubernetes · Terminal Azure Devops · GitHub Actions · Jenkins · Containerd · Docker Compose · Docker · GitOps · Debuging Development · Deployment Strategies · Argo Cd · Flux · Helm · Jenkins · Kubernetes Operator · Kustomize · Ingress Controller · Nginx Ingress · Traefik Ingress · Kubernetes · Garden · K3s · Mirrord · Okteto · Skaffold · Telepresence · Tilt · Services · Linux Bash · Bash · Powershell
Distributed Systems Messaging · Microservices · Reliability · Service Discovery · Service Mesh · Systems Design Back Pressure · Concurrency · Distributed Locking · Distributed Transactions · Event Driven Architecture · Eventual Consistency · gRPC · Async API Documentation · Change Data Capture · Kafka · Messaging Patterns · Messaging · NATS · Rabbitmq · Zeromq · Ambassador · API Gateway · Kong · Ocelot · Communication · Composite Ui · Microservices · CorrelationId · Diagnostics · Distributed Tracing · Logging · Monitoring · Observability · EFK · ELK · Fluent Bit · Fluentd · Loki · High Availibility · Idempotency · Resiliency · SBOM · Security Scan · Security · Vault · Services Boundries · Testing · Aspire · CAP · Dapr · Mass Transit · Nservicebus · Steeltoe · Tye · Wolverine · Scaling · Consul · Eureka · Service Discovery · Istio · Linkerd · Maesh · Service Mesh · Consistent Hash · Systems Design
Foundations Modeling Abstraction · Algorithm · Architecture Documententation · Clean Code · Code Review · Functional · Architecture Diagram · Class Diagram · Component Diagram · Conceptual Modeling · Data Model Notations · Domain Stroytelling · Er Diagrams · Event Modeling · Event Storming · Logical Modeling · Modeling · Physical Modeling · Relationship · Tools · Use Case Diagram · Object Oriented Design · Open Source · Others · Refactoring · Software Architecture · Type Driven Design
Software Architecture Anti Patterns · Architecture Patterns · Design Practices · Principles Anti Patterns · Big Ball Of Mud · Code Smells · God Object · Leaky Abstractions · Partial Object · Static Cling · Actor Model Architecture · Akka .NET · Orleans · Protoactor · Clean Architecture · CQRS · Adapter Pattern · Builder · Chain Of Responsibility · Command Message Pattern · Command Pattern · Decorator Pattern · Design Patterns · Factory Pattern · Mediator Pattern · Observer · Query Object Pattern · Repository Pattern · REPR · Service Locator · Singleton · Specification Pattern · State Pattern · Strategy Pattern · Transaction Script Pattern · Aggregation · Anemic Domain Model · Application Service · Bounded Context · Domain Driven Design · Domain Events · Domain Primitives · Domain Service · Domain · Enums · Exception And Validation · Infrastructure · Integration Event · Mapping · EF · Rich Domain Model · Strategic Design Patterns · Tactical Design Patterns · Value Objects · Event Sourcing · Hexagonal Architecture · Micro Frontend · Modular Monolith · Onion Architecture · Rest · Service Oriented Architecture · Vertical Slice Architecture · 12 Factor · Design Best Practices · Thin Controllers · Architectural Design Principles · CAP · Cohesion · Coupling · CQS · Cross Cutting Concerns · Dependency Inversion · DRY · Encapsulation · Fail Fast · Favor Composition Over Inheritance · Grasp · Interface Segregation · Inversion Control · Kiss · Open Closed Principles · Persistence Ignorance · Single Responsibility · SOLID · YAGNI

Topic pages are discovered from folders automatically, so new topics do not require manual navigation updates.

Browse Resources

The catalog includes articles, videos, courses, books, libraries, samples, tools, and other references. Search the web app by collection, topic, section, name or source domain, or browse the full source tree in docs/.

🙏 Special Thanks

Thanks to the authors of the links for their valuable content. This project gathers them in one place so architecture topics are easier to find and study.

⭐ Support

If you like the project, feel free to star the repository. It helps the collection reach more builders.

🤝 Contribution

Contributions are always welcome. Please read the contribution guidelines first.

Thanks to all contributors. The goal is to build a categorized, community-driven collection of practical architecture resources.

awesome-software-architecture (mehdihadeli/awesome-software-architecture)

Searching Database…

What is this?A curated catalog of articles, videos, courses, books, and other resources for learning and practicing software architecture, patterns, and principles, covering everything from design patterns and DDD to cloud, distributed systems, and AI engineering.
Is this a tool I install, or just a reading list?It is a reading list: the repository is the raw source catalog of links, organized as Markdown folders, and a separate companion web app renders it as a searchable, filterable browsing experience.
How do I browse the catalog?Use the Awesome Architecture web app for fast, searchable browsing, or just walk the collection-to-subcollection-to-topic table and Markdown folders in docs/ directly on GitHub.
Is this list still actively maintained?There is no fixed review process stated, but the project explicitly invites ongoing contributions and credits all contributors, so it is community-maintained rather than a frozen snapshot.
Who is this collection aimed at?Developers and architects who want to learn or practice software architecture topics like clean architecture, DDD, microservices, CQRS, and system design.
What kinds of resources are in the catalog?It aggregates articles, videos, courses, books, libraries, samples, and tools, not just links to one format.
How is the catalog organized?It follows a three-level hierarchy of collection, subcollection, and topic area (for example Software Architecture > Architecture Patterns > CQRS), and each link opens the matching Markdown folder or topic page.
Do new topics require manual navigation updates?No, topic pages are discovered from the folder structure automatically, so adding a new topic folder is enough to make it browsable.
Why was this collection created?The author built it to gather valuable architecture content from many different authors into one place so these topics are easier to find and study.
Size
4.9 MB
Stars
11.7K
Age
5y
Commits · 90 Days