GithubHelp home page GithubHelp logo

tintran-dev / flutter-riverpod-architecture-1 Goto Github PK

View Code? Open in Web Editor NEW

This project forked from simpleboilerplates/flutter

0.0 0.0 0.0 2.11 MB

A boilerplate project for Flutter using RiverPod, Dio, go_router, Freezed and generated with very_good_cli

License: MIT License

Ruby 0.82% Objective-C 0.02% Kotlin 0.09% Dart 94.64% Swift 0.24% Makefile 1.79% HTML 2.40%

flutter-riverpod-architecture-1's Introduction

Flutter Boilerplate

coverage style: very good analysis style: effective dart Flutter Samples License: MIT

A boilerplate project for Flutter using RiverPod, Dio, go_router, Freezed and generated with very_good_cli.


This is a very simple Boilerplate application, this has following features.

  • User can Sign In and Up
  • After signing in he can see a list of items

It uses a mock json server which doesn't store or validate anything, so for signing in/up any email, password will simply work.

RiverPod was used for state management, but there's an old implementation with Flutter bloc as well, you may check out bloc branch, though that branch doesn't have many of the latest changes.

Getting Started ๐Ÿš€

You can go through this Flutter Starter Pack.

This project contains 3 flavors:

  • development
  • staging
  • production

To run the desired flavor either use the launch configuration in VSCode/Android Studio or use the following commands:

# Development
$ flutter run --flavor development --target lib/main_development.dart

# Staging
$ flutter run --flavor staging --target lib/main_staging.dart

# Production
$ flutter run --flavor production --target lib/main_production.dart

*Flutter Boilerplate works on iOS, Android, and Web.


Use MakeFile / Derry to avoid writing your own scripts.

You can run all these scripts manually or could use MakeFile / Derry and maintain a file, where you can define all those scripts and run in a very convinient way. All the scripts for this project is defined here derry scripts and makefile scripts

Example:

run make watch or derry watch instead of

flutter pub run build_runner watch --delete-conflicting-outputs

run make build or derry build instead of

flutter pub run build_runner build --delete-conflicting-outputs

or run make build_apk_dev or derry build_apk_dev instead of

flutter build apk --flavor development -t lib/main_development.dart 

Running Tests ๐Ÿงช

To run all unit and widget tests use the following command:

$ flutter test --coverage --test-randomize-ordering-seed random

To view the generated coverage report you can use lcov.

# Generate Coverage Report
$ genhtml coverage/lcov.info -o coverage/

# Open Coverage Report
$ open coverage/index.html

Working with Translations ๐ŸŒ

Adding Strings

  1. To add a new localizable string, open the app_en.arb file at assets/land/arb/en.json.
{
  "home" : "Home",
  "loading" : "Loading",
  "email" : "Email",
  "password" : "Password",
  "name" : "Name",
  "sign_in" : "Sign In",
  "sign_up" : "Sign Up"

}
  1. After adding new
import 'package:easy_localization/easy_localization.dart';

@override
Widget build(BuildContext context) {
  return Text("helloWorld".tr());
}

Same implementation in other platforms


TODO

  • Updating it on daily basis as much as possible, work in progess[WIP].

Found this project useful โค๏ธ

  • Support by clicking the โญ button on the upper right of this page. โœŒ๏ธ

Find me at

License

CC0

flutter-riverpod-architecture-1's People

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.