Skip to content

An easy flutter mvvm solution that includes ways to manage routes, views, viewmodels, and the mvvm architecture

License

Notifications You must be signed in to change notification settings

rjs580/easy_mvvm

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

easy_mvvm is a Flutter package that simplifies state management by following the Model-View-ViewModel (MVVM) architectural pattern. The MVVM pattern separates the user interface (View) from the business logic and data (Model), using a ViewModel to mediate between the two. With easy_mvvm, you can easily create views and services using the command-line interface, which is powered by the get_it package. The package also supports the service locator pattern, which enables you to create singleton, lazy singleton, and factory services. The package includes command-line options and arguments that allow you to quickly create views and services and customize their behavior. If you're looking for a simple yet powerful way to manage state in your Flutter application, easy_mvvm is a great choice.

Uses the get_it package for the service locator pattern.

Getting Started

Installation

  1. Add to your pubspec.yaml:
dependencies:
  easy_mvvm: <last_version>
  1. Run the init command in terminal flutter pub run easy_mvvm init

Web Recommendation

Use url_strategy to remove the '#' in the URL

Command line options and arguments

Options Short Description Usage
create Quickly creates views, and services flutter pub run easy_mvvm create <options>
init Initialize an mvvm project (creates the folder structure and necessary files) flutter pub run easy_mvvm init
--help -h Print Usage Information flutter pub run easy_mvvm -h

Command line options and arguments for create

Options Short Description Usage
service Creates a service flutter pub run easy_mvvm create service <options>
view Creates the view and the view model flutter pub run easy_mvvm create view <ClassName>
--help -h Print Usage Information flutter pub run easy_mvvm <options> -h

Command line arguments for create service

Arguments Short Description Usage
--singleton= Creates a singleton service flutter pub run easy_mvvm create service --singleton=ExampleView
--lazySingleton= Creates a lazy singleton service (Recommended) flutter pub run easy_mvvm create service --lazySingleton=ExampleView
--factory= Creates a factory for a service flutter pub run easy_mvvm create service --factory=ExampleView
--async -a The service needs async function to be instantiated flutter pub run easy_mvvm create service --lazySingleton=ExampleView -a
--help -h Print Usage Information flutter pub run easy_mvvm <options> -h

Command line arguments for create view <ClassName>

Arguments Short Description Usage
--path=<path_name> -p Use if path name (route) for web is not the same as the class name flutter pub run easy_mvvm create view <ClassName> --path=routePath
--help -h Print Usage Information flutter pub run easy_mvvm <options> -h

About

An easy flutter mvvm solution that includes ways to manage routes, views, viewmodels, and the mvvm architecture

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published