It's based on examples given on oficial refactoring.guru website but transcripted on dart programming language.
Are typical solutions to common problems in software design. Each pattern is like a blueprint that you can customize to solve a particular design problem in your code.
Patterns are a toolkit of solutions to common problems in software design. They define a common language that helps your team communicate more efficiently.
Design patterns differ by their complexity, level of detail and scale of applicability. In addition, they can be categorized by their intent and divided into three groups: Creational, Structural and Behavioral.
Please take a look into refactoring.guru website, they have a lot of good material in there!
Feel free to also open pull-requests with different ideas of implementation. 🙂