/flutter-sample

A fully working boilerplate sample Flutter app implementation.

Primary LanguageDartMIT LicenseMIT

Cíngulo Flutter Sample

Status develop
Travis CI Build Status
Coveralls Coverage Status

Check out a short demo video here.
Check out some screenshots here.

A fully working sample Flutter app implementation. Give this repo a Star if you like it :)

  • Layers separation (data, domain, logic, ui)
  • Network calls and very simple caching and concurrency mechanism
  • Generic error handling
  • Forms validation
  • Generic bloc structure
  • RxDart
  • Dependency injection
  • Authentication with JWT and daily renewal
  • Themes
  • Multiple languages
  • Named routes
  • Named routes with parameters
  • Names routes with simple permission control
  • Analytics and pushes skeleton
  • We have published the API so that you can test the app
  • Looks good but... it is still missing tests (TODO) :(

Dependency Injection

This project uses inject.dart. You will have to clone it under vendor/inject.dart:

    $ cd <repository-root>
    $ git clone https://github.com/cingulo/inject.dart.git vendor/inject.dart

Use the command below to build the dependency injection:

    $ flutter packages pub run build_runner build --build-filter "lib/data/*/*.dart" --delete-conflicting-outputs
    $ flutter packages pub run build_runner build --build-filter "lib/app/*.dart" --delete-conflicting-outputs
  • Done, you should now be good to run the app.

API Docs

Open the docs URL in your browser. You can also check the API GitHub repository.