Git Product home page Git Product logo

flutter_riverpod_gallery's Introduction

README

Flutter 3.13.6

This project is a demonstration of how to create a Flutter application using a clean architecture, Riverpod, Firebase, Equatable, and other design patterns and principles.

Considerations

  1. You can find an updated APK in the following folder:
resources/app-release.apk

Installation

  1. Install Flutter by following the instructions in the official documentation: https://flutter.dev/docs/get-started/install.
  2. Clone this repository:
git clone https://github.com/carrizomiguel/flutter_riverpod_gallery.git
  1. Navigate to the project folder:
cd flutter_riverpod_gallery
  1. Install dependencies:
flutter pub get

Execution

To run the application in development mode:

flutter run

To run the application in production mode:

flutter run --release

Screenshots

Screenshots

Architecture

Project Folder Structure

├── lib/
|   ├── core/
|   │   ├── app/
│   │   │   ├── views/
│   │   │   └── app.dart
|   │   ├── util/
|   │   ├── error/
|   |   └── core.dart
│   ├── features/
│   │   ├── feature1/
│   │   │   ├── data/
│   │   │   ├── domain/
│   │   │   ├── presentation/
│   │   │   └── feature1.dart
│   │   ├── feature2/
│   │   │   ├── data/
│   │   │   │   ├── data_sources/
│   │   │   │   ├── models/
│   │   │   │   └── repositories/
│   │   │   ├── domain/
│   │   │   │   ├── entities/
│   │   │   │   ├── repositories/
│   │   │   │   └── usecases/
│   │   │   ├── presentation/
│   │   │   │   ├── provider/
│   │   │   │   ├── views/
│   │   │   │   └── widgets/
│   │   │   └── feature2.dart
│   │   └── features.dart
|   ├── firebase_options.dart
|   ├── injector.dart
|   ├── main.dart
│   └── observer.dart
├── pubspec.yaml
└── README.md

Design Patterns and Principles

The application incorporates the following design patterns and principles:

  • Equatable: This mixin assists in efficiently comparing objects.
  • Clean Architecture: This architectural pattern aids in designing modular and maintainable applications.

Others

The application also utilizes the following libraries and tools:

  • Dart: This programming language is used to develop Flutter applications.
  • Flutter: This SDK is employed to create mobile, web, and desktop applications using Dart.
  • Flutter DevTools: This toolkit helps debug and profile Flutter applications.

flutter_riverpod_gallery's People

Contributors

carrizomiguel avatar

Watchers

 avatar

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.