This repository is a home to packages and tools from the Elementary library family.
Package | Version |
---|---|
elementary | |
elementary_helper | |
elementary_test | |
elementary_cli |
Elementary is a simple and reliable way to build applications with MVVM in Flutter. Benefits from using:
- maximum Flutter-like, you don't need to spend a lot of time learning the library if you are already familiar with the standard Flutter approaches;
- splitting code into different layers by responsibility, that bring low coupling, make code simpler as well as more readable;
- high testability of all layers from widgets to business logic;
- speed boost for a team consisting of more than one person, due to the easy sharing of independent task-parts among team members.
For reduce amount of boilerplate and the manual work, for Elementary there are few options:
- elementary_cli - command line util helps with boilerplate generation;
- plugin for IntelliJ - plugin for IntelliJ IDE family, based on elementary_cli;
- plugin for VSCode - plugin for VSCode, based on elementary_cli;
- elementary brick - command line util helps with boilerplate generation, based on mason.
Country - general example how to use elementary for development;
Elementary with Redux - example how to use elementary + redux;
Profile - example shows the feature with the process that spread by separate screens, and also how to use elementary + bloc;
Mikhail Zotyev
Big thanks to all these people, who put their effort to help the project.
Special thanks to:
Dmitry Krutskikh, Konoshenko Vlad, Denis Grafov for the early adoption and the first production feedback;
Alex Bukin for IDE plugins;
All members of the Surf Flutter Team for actively using and providing feedback.
Special sponsor of the project:
For all questions regarding sponsorship/collaboration connect with Mikhail Zotyev.