Code structure

The folder structure of the code and the separation between UI, Data and Business Logic

core/

Contains everything that is shared across the app and not dedicated to a certain page

core/data/

Contains the data models for data that is fetched from the database

core/provider/

The app uses providers. This folder contains all provider classes.

core/repositories/

Contains the repositories with the business logic for each functionality.

core/widgets/

Contains all widgets which are not dedicated to a single page but reusable within the whole app.

core/wrapper/

Contains the wrappers used for routing pages. Like an authentication wrapper.

I10n/

Contains all translations.

pages/

Contains all pages which are accessable in the app.

pages/[any page name]/

Contains the main widget which is returned within a page route.

pages/[any page name]/[widgets]/

Contains all widgets dedicated to this page.

app_router.dart

Cotnains the routing logic between the pages.

firebase_options.dart

(Optional) Is automatically created when implementing Firebase to the app and contains the credentials.

main.dart

The entry point of the Flutter app.

Last updated