{"id":49727,"url":"https://github.com/Guruscode/awesome-design-patterns","name":"awesome-design-patterns","description":"forked for design patterns","projects_count":101,"last_synced_at":"2026-04-05T22:01:19.761Z","repository":{"id":129644587,"uuid":"293196049","full_name":"Guruscode/awesome-design-patterns","owner":"Guruscode","description":"forked for design patterns","archived":false,"fork":false,"pushed_at":"2020-09-06T03:29:59.000Z","size":5,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2026-03-23T06:10:50.634Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Guruscode.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"contributing.md","funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2020-09-06T03:28:41.000Z","updated_at":"2020-09-06T03:30:01.000Z","dependencies_parsed_at":"2023-08-29T11:55:15.533Z","dependency_job_id":null,"html_url":"https://github.com/Guruscode/awesome-design-patterns","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Guruscode/awesome-design-patterns","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Guruscode%2Fawesome-design-patterns","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Guruscode%2Fawesome-design-patterns/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Guruscode%2Fawesome-design-patterns/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Guruscode%2Fawesome-design-patterns/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Guruscode","download_url":"https://codeload.github.com/Guruscode/awesome-design-patterns/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Guruscode%2Fawesome-design-patterns/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31451446,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-05T21:22:52.476Z","status":"ssl_error","status_checked_at":"2026-04-05T21:22:51.943Z","response_time":75,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"readme":"# Awesome Software and Architectual Design Patterns \n\u003cbr\u003e\n\n\u003cimg alt=\"PRs Welcome\" src=\"https://img.shields.io/badge/PRs-welcome-brightgreen.svg\" /\u003e \u003ca href=\"https://gitter.im/awesome-design-patterns/Lobby\"\u003e\u003cimg src=\"https://badges.gitter.im/awesome-design-patterns/Lobby.svg\" alt=\"awesome\"\u003e\u003c/a\u003e \u003ca href=\"http://awesome.re\"\u003e\u003cimg src=\"https://cdn.rawgit.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg\" alt=\"awesome\"\u003e\u003c/a\u003e \n\n\u003cbr\u003e\n\n\u003e A curated list of software and architecture related design patterns.\n\n[Software design pattern](https://en.wikipedia.org/wiki/Software_design_pattern) - A general, reusable solution to a commonly occurring problem within a given context in software design. It is a description or template for how to solve a problem that can be used in many different situations. \n\n\n\n\u003cbr\u003e\n\n## Contents\n- [Programming language design patterns](#programming-language-design-patterns)\n- [General Architecture](#general-architecture)\n- [Cloud Architecture](#cloud-architecture)\n- [Serverless Architecture](#serverless-architecture)\n- [Micro services \u0026 Distributed Systems](#micro-services--distributed-systems)\n- [Internet of things](#internet-of-things)\n- [Big Data](#big-data)\n- [Databases](#databases)\n- [Docker and DevOps](#docker-and-devops)\n- [Mobile](#mobile)\n- [Front End Development](#front-end-development)\n- [Security](#security)\n- [Books](#books)\n\n\u003cbr\u003e\n\n## Programming Language Design Patterns\n- AngularJS\n\t- [design patterns](https://github.com/mgechev/angularjs-in-patterns)\n- C#\n\t- [design-patterns](https://github.com/abishekaditya/DesignPatterns) \n\t- [design-patterns-for-human](https://github.com/anupavanm/csharp-design-patterns-for-humans) - ultra simplified explanation to design patterns.\n- C++\n\t- [design-patterns](http://www.vincehuston.org/dp/)\n- Closure\n\t- [design-patterns](https://arturoherrero.com/closure-design-patterns/)\n- Go\n\t- [design-patterns](https://github.com/tmrts/go-patterns)\n- Java\n\t- [sourcemaking](https://sourcemaking.com/design_patterns) - patterns and anti patterns.\n\t- [oodesign](https://www.oodesign.com/)  - patterns catalog with UML diagrams.\n\t- [design-patterns](https://github.com/iluwatar/java-design-patterns)\n\t- [effective-java patterns](https://github.com/HugoMatilla/Effective-JAVA-Summary) - patterns from the Effective Java book.\n\t- [Design patterns implemented in Java](https://java-design-patterns.com/patterns/)\n- JavaScript\n\t- [es6 design patterns](https://github.com/ziyasal/design-patterns-and-idioms-in-es6)\n\t- [humans](https://github.com/sohamkamani/javascript-design-patterns-for-humans) - ultra simplified explanation to design patterns.\n\t- [design-patterns](https://github.com/nnupoor/js_designpatterns)\n\t- [design patterns by addy osmani](https://addyosmani.com/resources/essentialjsdesignpatterns/book)\n- Kotlin\n\t- [design-patterns](https://github.com/dbacinski/Design-Patterns-In-Kotlin) \n- Node\n\t- [Real world design patterns with Node.js](https://github.com/nimit95/Real-world-Design-Patterns-Node-JS)\n- PHP\n\t- [humans](https://github.com/kamranahmedse/design-patterns-for-humans) - ultra simplified explanation to design patterns.\n\t- [design-patterns](https://github.com/domnikl/DesignPatternsPHP) \n- Python\n\t- [design-patterns](https://github.com/faif/python-patterns) \n\t- [PyPattyrn](https://github.com/tylerlaberge/PyPattyrn) - A simple library for implementing common design patterns.\n- React\n\t- [design-patterns](http://krasimirtsonev.com/blog/article/react-js-in-design-patterns)\n\t- [react-bits](https://github.com/vasanthk/react-bits)\n\t- [reactpatterns.com](https://reactpatterns.com)\n- Ruby\n\t- [design-patterns](https://github.com/davidgf/design-patterns-in-ruby) \n- Scala\n\t- [design-patterns](https://github.com/josephguan/scala-design-patterns)\n- Swift\n\t- [design-patterns](https://github.com/ochococo/Design-Patterns-In-Swift)\n- TypeScript\n\t- [design-patterns](https://github.com/torokmark/design_patterns_in_typescript)\n- UML\n\t- [design-patterns quick reference](http://www.mcdonaldland.info/2007/11/28/40)\n\t- [design-patterns cheat-sheet](https://www.slideshare.net/hustwj/design-patterns-cheat-sheet)\n- Vue.js\n\t- [Vue Patterns](https://learn-vuejs.github.io/vue-patterns/) - Useful Vue patterns, techniques, tips and tricks and curated helpful links.\n\t\n\t\n## General Architecture\n- [10 common architectural patterns](https://towardsdatascience.com/10-common-software-architectural-patterns-in-a-nutshell-a0b47a1e9013) - 10 Common software architectural patterns in a nutshell.\n- [reactive design patterns](https://www.reactivedesignpatterns.com/categories.html) - This website accompanies the book Reactive Design Patterns by Roland Kuhn.\n- [scalable System Design Patterns](https://dzone.com/articles/scalable-system-design) - Scalable system design techniques.\n- [martin fowler](https://martinfowler.com/eaaCatalog) - Catalog of Patterns of Enterprise Application Architecture.\n- [system-design-primer](https://github.com/donnemartin/system-design-primer) - Design large-scale systems.\n- [architecting-for-reliability](https://medium.com/becloudy/architecting-for-reliability-part-1-concepts-17028343089) - Architecting for Reliability Part 1/3.\n\n\n## Cloud Architecture\n- [Cloud cost hacking](https://hackernoon.com/cloud-cost-hacking-fc35fd19985d) - Patterns for reducing cloud costs. \n- [AWS cloud design patterns](http://en.clouddesignpattern.org/index.php/Main_Page) - The AWS Cloud Design Patterns (CDP).\n- [Azure cloud design patterns](https://docs.microsoft.com/en-us/azure/architecture/patterns) - Building reliable, scalable, secure applications in the cloud.\n- [cloud patterns](http://cloudpatterns.org) - A community site dedicated to documenting a master patterns catalog.\n- [cloud computing patterns](http://www.cloudcomputingpatterns.org) - Cloud Computing Patterns.\n- [Google Cloud Solutions](https://gcp.solutions) - Real business cases solutions with diagrams on GCP.\n\n## Serverless Architecture\n- [serverless architecture](https://thenewstack.io/serverless-architecture-five-design-patterns) - Serverless Architecture: Five Design Patterns.\n- [solving problems in serverless](https://freecontent.manning.com/patterns-for-solving-problems-in-serverless-architectures) - Patterns for Solving Problems in Serverless Architectures.\n- [serverless patterns](https://www.jeremydaly.com/serverless-microservice-patterns-for-aws/) - serverless microservice patterns for aws.\n- [serverless-reference-architectures](https://www.jeremydaly.com/serverless-reference-architectures//) - serverless microservice patterns with deployment scripts.\n\n\n\n\n\n## Micro services \u0026 Distributed Systems\n- [microservice patterns](http://microservicepatterns.org) - A community site dedicated to documenting a master patterns catalog.\n- [microservices](http://microservices.io/patterns) - A pattern language for microservices.\n- [microservices-anti patterns](https://www.oreilly.com/ideas/microservices-antipatterns-and-pitfalls) - Microservices antipatterns and pitfalls.\n- [12factor](https://12factor.net) - The twelve-factor methodology.\n- [microservices-sync-vs-async](https://dzone.com/articles/patterns-for-microservices-sync-vs-async) - Microservices patterns, synchronous and asynchronous.\n- [message-queues](http://tech.forter.com/comparing-message-queue-architectures-on-aws) - Comparing-message-queue-architectures.\n- [enterprise Integration Patterns](http://www.enterpriseintegrationpatterns.com/patterns/messaging/toc.html) - Patterns and Best Practices for Enterprise Integration.\n\n## Internet of things\n- [iot-communication-patterns](https://dzone.com/articles/strengths-and-weaknesses-of-iot-communication-patterns) - Strengths and Weaknesses of IoT Communication Patterns.\n- [design-patterns-for-iot](https://community.arm.com/iot/b/blog/posts/design-patterns-for-an-internet-of-things) - A Design Pattern Framework for IoT Architecture.\n\n## Big Data\n- [bigdatapatterns](http://bigdatapatterns.org) - A community site dedicated to documenting a master patterns catalog.\n- [mapreduce-patterns](https://highlyscalable.wordpress.com/2012/02/01/mapreduce-patterns) - Map-reduce patterns.\n- [streaming-realtime-analytics](https://iwringer.wordpress.com/2015/08/03/patterns-for-streaming-realtime-analytics) - 13 Stream Processing Patterns for building Streaming and Realtime Applications.\n\n## Databases\n- SQL\n\t- [database tenancy patterns](https://docs.microsoft.com/en-us/azure/sql-database/saas-tenancy-app-design-patterns) - Multi-tenant SaaS database tenancy patterns\n\t- [databaseanswers](http://www.databaseanswers.org/data_models) -  Industry-specific SQL Data Models in 50 categories.\n\t- [database-programmer](http://database-programmer.blogspot.com/2008/01/table-design-patterns.html) - Table-design-patterns.\n\t- [red-gate](https://www.red-gate.com/simple-talk/sql/database-administration/five-simple-database-design-errors-you-should-avoid) -  five simple database design errors you should avoid.\n\t- [talend](https://www.talend.com/blog/2017/05/05/data-model-design-best-practices-part-1) - Data model design best practices. \n\t- [sqlcheck](https://github.com/jarulraj/sqlcheck) - Anti-patterns in SQL queries.\n- NOSQL\n\t- [nosql resilience patterns](https://www.ebayinc.com/stories/blogs/tech/practical-nosql-resilience-design-pattern-for-the-enterprise) - Practical NoSQL resilience design pattern for the enterprise.\n\t- [nosql-patterns](https://dzone.com/articles/introduction-nosql-patterns) - Pragmatic Programming Techniques.\n\t- [mongodb](https://dzone.com/articles/mongodb-design-patterns) - Mongodb design patterns.\n\n## Docker and DevOps\n- [containerspatterns](https://l0rd.github.io/containerspatterns) - There are a Thousand Ways to Use Containers.\n- [container-anti-patterns](http://blog.arungupta.me/docker-container-anti-patterns) - 10 containers anti-patterns.\n- [kubernetes](https://github.com/gravitational/workshop/blob/master/k8sprod.md) - Kubernetes Production Patterns.\n- [container-design-patterns](https://vitalflux.com/container-design-patterns-kubernetes-pods-design) - Container Design Patterns for Kubernetes Pods Design.\n- [pattern-and-anti-pattern-cicd](https://www.gronau-it-cloud-computing.de/pattern-and-anti-pattern-cicd) - Pattern and anti-pattern cicd.\n- [best-practices-for-shell-scripts](https://stackoverflow.com/questions/78497/design-patterns-or-best-practices-for-shell-scripts) - Best practices for shell scripts.\n- [kubernetes patterns](https://github.com/ro14nd-talks/kubernetes-patterns) - Presentation around the book kubernetes paterns.\n\n## Mobile\n- IOS\n\t- [ios-architecture-patterns](https://medium.com/ios-os-x-development/ios-architecture-patterns-ecba4c38de52)\n- Android\n\t- [androidpatterns](https://unitid.nl/androidpatterns) - Interaction patterns that can help you design Android apps. \n\t- [design-patterns-for-android](https://www.raywenderlich.com/109843/common-design-patterns-for-android) -  Common Design Patterns for Android. \n\t- [mvc-mvp-and-mvvm](https://academy.realm.io/posts/eric-maxwell-mvc-mvp-and-mvvm-on-android) -  The MVC, MVP, and MVVM Smackdown. \n\t\n\t\n## Front-End Development\n- [user Interface](http://ui-patterns.com) - User Interface Design patterns.\n- [oocss-acss-bem-smacss](http://clubmate.fi/oocss-acss-bem-smacss-what-are-they-what-should-i-use) - OOCSS, ACSS, BEM, SMACSS: what are they? What should I use?\n- [css-protips](https://github.com/AllThingsSmitty/css-protips) - A collection of tips to help take your CSS skills pro.\n- [responsive design patterns](https://bradfrost.github.io/this-is-responsive/patterns.html#layout) - A collection of patterns and modules for responsive designs.\n- [front-End Architecture]\n\t- [mv*](https://proandroiddev.com/mvc-mvp-mvvm-clean-viper-redux-mvi-prnsaaspfruicc-building-abstractions-for-the-sake-of-building-18459ab89386) - MVC/MVP/MVVM/CLEAN/VIPER/REDUX/MVI/PRNSAASPFRUICC.\n\t- [martinfowler](https://martinfowler.com/eaaDev/uiArchs.html) - GUI Architectures.\n\n## Security\n- [opensecurityarchitecture](http://www.opensecurityarchitecture.org/cms/library/patternlandscape) - Security Architecture Patterns.\n- [martinfowler](https://www.martinfowler.com/articles/web-security-basics.html) - Web-security-basics.\n- [cloud-security](https://www.infoq.com/articles/cloud-security-architecture-intro) - Cloud security architecture intro.\n- [owasp](https://www.owasp.org/index.php/Security_by_Design_Principles) - Security by Design Principles.\n- [azure-security](https://docs.microsoft.com/en-us/azure/security/security-best-practices-and-patterns) - Azure security best practices and patterns.\n\n## Books\n- [Django Design Patterns and Best Practices](https://arunrocks.com/static/book/django-design-patterns-best-practices-2-ed)\n- [MongoDB Applied Design Patterns](http://shop.oreilly.com/product/0636920027041.do)\n- [Design-Patterns-Elements-Reusable-Object-Oriented](https://www.amazon.com/Design-Patterns-Elements-Reusable-Object-Oriented/dp/0201633612/ref=sr_1_4?s=books\u0026ie=UTF8\u0026qid=1528136036\u0026sr=1-4\u0026keywords=design+patterns)\n- [Head-First-Design-Patterns-Brain-Friendly](https://www.amazon.com/Head-First-Design-Patterns-Brain-Friendly/dp/0596007124/ref=pd_sim_14_4)\n- [Effective-Java-3rd-Joshua-Bloch](https://www.amazon.com/Effective-Java-3rd-Joshua-Bloch/dp/0134685997/ref=pd_sim_14_7)\n- [Node.js Design Patterns](https://www.packtpub.com/web-development/nodejs-design-patterns-second-edition)\n- [Game Programming Patterns](https://github.com/munificent/game-programming-patterns)\n- [Object Design Style Guide](https://www.manning.com/books/object-design-style-guide)\n\n## Other Awesome Lists\n- Other amazingly awesome lists can be found in the [awesome](https://github.com/sindresorhus/awesome) list.\n\n## Contributing\n- Your contributions are always welcome! Please read the [contribution guidelines](contributing.md) first.\n\n## License\n\n[![CC0](http://mirrors.creativecommons.org/presskit/buttons/88x31/svg/cc-zero.svg)](https://creativecommons.org/publicdomain/zero/1.0) \n\n\nTo the extent possible under law, [Dov Amir](https://github.com/DovAmir) has waived all copyright and related or neighboring rights to this work.\n","created_at":"2024-01-14T11:15:46.474Z","updated_at":"2026-04-05T22:01:19.762Z","primary_language":null,"list_of_lists":false,"displayable":true,"categories":["Front-End Development","Programming Language Design Patterns","Books","General Architecture","Cloud Architecture","Micro services \u0026 Distributed Systems","Internet of things","Databases","Docker and DevOps","Mobile","Security","License","Serverless Architecture","Big Data","Other Awesome Lists"],"sub_categories":[],"projects_url":"https://awesome.ecosyste.ms/api/v1/lists/guruscode%2Fawesome-design-patterns/projects"}