Flutter ToDo application using Clean Code architecture

  Todo

DoneIt memo

DoneIt is a sample note app memo Flutter application iphone built to demonstrate use of Clean Architecture tools. Dedicated to all Flutter Developers with heart.

About

It simply loads Notes data from in memory database. Notes will be always loaded from in memor database.

  • This makes it offline capable smiley.
  • Clean and Simple Material UI.
  • It supports dark theme too last_quarter_moon.

Directory Structure

.
├── core                       # For all common and core files.
│   ├── error                  # contains all Exceptions and Failures classes
│   ├── presentation           # Common presentation files
|   │   └── blocs              # Common blocs
|   │   └── pages              # Core pages
|   │   └── widgets            # Common widgets
│   └── route                  # Routes for navigation
│   └── theme                  # Theme data
│   └── usecases               # Common usecases
|
├── data                       # Data Files of Feature 1
│   ├── datasources            # DataSources Abstract Files and Implementations
│   │   └── feature            # Feature 1 (for exp : Todo Feature)
│   │       └── sub-feat.      # Sub feature
│   ├── models                 # Models for data
│   │   └── feature            # Feature 1 (for exp : Todo Feature)
│   │       └── sub-feat.      # Sub feature
│   └── repositories           # Repositories Implementation Classes
│       └── feature            # Feature 1 (for exp : Todo Feature)
│           └── sub-feat.      # Sub feature
├── domain                     # Domain
│   ├── entities               # Entities For Feature 1
│   │   └── feature            # Feature 1 (for exp : Todo Feature)
│   │       └── sub-feat.      # Sub feature
│   ├── usecases               # Usecases of Feature 1
│   │   └── feature            # Feature 1 (for exp : Todo Feature)
│   │       └── sub-feat.      # Sub feature
│   └── repositories           # Repositories Abstract Classes
│       └── feature            # Feature 1 (for exp : Todo Feature)
│           └── sub-feat.      # Sub feature
└── presentation               # Presentation files
    ├── blocs                  # Blocs
    │   └── feature            # Feature 1 (for exp : Todo Feature)
    │       └── sub-feat.      # Sub feature
    ├── pages                  # Pages
    │   └── feature            # Feature 1 (for exp : Todo Feature)
    │       └── sub-feat.      # Sub feature
    └── widgets                # Widgets
        └── feature            # Feature 1 (for exp : Todo Feature)
            └── sub-feat.      # Sub feature

Architecture

This app uses [Clean Architecture by Robert C Martin]

Image Source : ResoCoder

Contribute

If you want to contribute to this library, you’re always welcome! See Contributing Guidelines.

Branches

.
├── master                       # Contains the latest release
       ├── dev                   # Contains the latest development
            ├── feature1         # feature 1 created from dev
            ├── feature2         # feature 2 created from dev
            ├── feature3         # feature 3 created from dev
            ├── bugFix1          # bugfix 1 created from dev
            ├── bugFix2          # bugfix 1 created from dev
            ├── docChange1       # docChange 1 created from dev
            ├── docChange1       # docChange 2 created from dev

Note : Create pull request for feature,bugfix,docChange to only dev branch.

Download Flutter ToDo application source code on GitHub

https://github.com/harshalgalgale/todo_flutter_app