{"id":13551031,"url":"https://github.com/scottt2/design-patterns-in-dart","last_synced_at":"2025-04-04T17:10:11.232Z","repository":{"id":41840902,"uuid":"191258274","full_name":"scottt2/design-patterns-in-dart","owner":"scottt2","description":"Gang of Four (GOF) design patterns implemented in Dart. Contributions welcome!","archived":false,"fork":false,"pushed_at":"2024-02-05T21:32:48.000Z","size":65,"stargazers_count":477,"open_issues_count":2,"forks_count":115,"subscribers_count":17,"default_branch":"master","last_synced_at":"2025-03-28T16:11:15.315Z","etag":null,"topics":["dart","dart2","dartlang","design","gang-of-four","gof","gof-patterns","patterns","patterns-design"],"latest_commit_sha":null,"homepage":"https://scottt2.github.io/design-patterns-in-dart/","language":"Dart","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/scottt2.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-06-10T23:14:28.000Z","updated_at":"2025-03-17T16:37:38.000Z","dependencies_parsed_at":"2024-08-01T12:18:47.418Z","dependency_job_id":"15b2e4eb-012b-4480-9108-39d1bcb18043","html_url":"https://github.com/scottt2/design-patterns-in-dart","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/scottt2%2Fdesign-patterns-in-dart","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/scottt2%2Fdesign-patterns-in-dart/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/scottt2%2Fdesign-patterns-in-dart/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/scottt2%2Fdesign-patterns-in-dart/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/scottt2","download_url":"https://codeload.github.com/scottt2/design-patterns-in-dart/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247217222,"owners_count":20903009,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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"}},"keywords":["dart","dart2","dartlang","design","gang-of-four","gof","gof-patterns","patterns","patterns-design"],"created_at":"2024-08-01T12:01:41.426Z","updated_at":"2025-04-04T17:10:11.212Z","avatar_url":"https://github.com/scottt2.png","language":"Dart","funding_links":[],"categories":["Dart"],"sub_categories":[],"readme":"# Design Patterns in Dart\n\nWelcome! The intent of this repo is to provide\n\n1. Examples for each of the [23 Gang of Four design patterns](https://en.wikipedia.org/wiki/Design_Patterns)\n2. An introduction to the [Dart programming language](https://dart.dev/)\n\nPlease see [Getting Started](#getting-started) for more information on how to run the examples.\n\n## Table of Contents\n\n### Behavioral Patterns\n\n* [x] [Chain of Responsibility](https://github.com/scottt2/design-patterns-in-dart/tree/master/chain_of_responsibility)\n* [x] [Command](https://github.com/scottt2/design-patterns-in-dart/tree/master/command)\n* [x] [Interpreter](https://github.com/scottt2/design-patterns-in-dart/tree/master/interpreter)\n* [x] [Iterator](https://github.com/scottt2/design-patterns-in-dart/tree/master/iterator)\n* [x] [Mediator](https://github.com/scottt2/design-patterns-in-dart/tree/master/mediator)\n* [x] [Memento](https://github.com/scottt2/design-patterns-in-dart/tree/master/memento)\n* [x] [Observer](https://github.com/scottt2/design-patterns-in-dart/tree/master/observer)\n* [x] [State](https://github.com/scottt2/design-patterns-in-dart/tree/master/state)\n* [x] [Strategy](https://github.com/scottt2/design-patterns-in-dart/tree/master/strategy)\n* [x] [Template Method](https://github.com/scottt2/design-patterns-in-dart/tree/master/template_method)\n* [x] [Visitor](https://github.com/scottt2/design-patterns-in-dart/tree/master/visitor)\n\n### Creational\n\n* [x] [Abstract Factory](https://github.com/scottt2/design-patterns-in-dart/tree/master/abstract_factory)\n* [x] [Builder](https://github.com/scottt2/design-patterns-in-dart/tree/master/builder)\n* [x] [Factory Method](https://github.com/scottt2/design-patterns-in-dart/tree/master/factory_method)\n* [x] [Prototype](https://github.com/scottt2/design-patterns-in-dart/tree/master/prototype)\n* [x] [Singleton](https://github.com/scottt2/design-patterns-in-dart/tree/master/singleton)\n\n### Structural Patterns\n\n* [x] [Adapter](https://github.com/scottt2/design-patterns-in-dart/tree/master/adapter)\n* [x] [Bridge](https://github.com/scottt2/design-patterns-in-dart/tree/master/bridge)\n* [x] [Composite](https://github.com/scottt2/design-patterns-in-dart/tree/master/composite)\n* [x] [Decorator](https://github.com/scottt2/design-patterns-in-dart/tree/master/decorator)\n* [x] [Facade](https://github.com/scottt2/design-patterns-in-dart/tree/master/facade)\n* [x] [Flyweight](https://github.com/scottt2/design-patterns-in-dart/tree/master/flyweight)\n* [x] [Proxy](https://github.com/scottt2/design-patterns-in-dart/tree/master/proxy)\n\n## Getting Started\n\nEach example has its own directory, inside which is a short readme and a sole Dart file.\nTo run the example, make sure you [have Dart installed](https://dart.dev/get-dart) and then just do\n```\ndart \u003cexample directory\u003e/\u003cexample name\u003e.dart\n```\nTake [State](https://github.com/scottt2/design-patterns-in-dart/tree/master/state), for example:\n```\n\u003e dart state/state.dart\n\nThe light switch is off.\nToggling the light switch...\n  Touching the Stateful...\n  Handler of StatusOff is being called!\nThe light switch is on.\n```\n\nIf you have any questions or see any issues, please feel free to [file an issue](https://github.com/scottt2/design-patterns-in-dart/issues/new).\n\nEnjoy!\n\n-Tyler\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fscottt2%2Fdesign-patterns-in-dart","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fscottt2%2Fdesign-patterns-in-dart","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fscottt2%2Fdesign-patterns-in-dart/lists"}