A multiplatform mobile application, developed with Flutter, that offers a private and secure interface. Designed with a clean architecture to ensure maintainability, testability, and scalability.
- System requirements
- Figma design guidelines for better UI accuracy
- Architecture and State
- Application structure
- How to get started
- How to format your code?
Dart SDK Version ">=3.6.0 <4.0.0".
Flutter SDK Version 3.27.0
https://www.figma.com/design/YmX2Ez1xvCi0xm348oQOEA/Lit-Run--copia-?node-id=0-1&t=ixueHrQ5mTRa9SFR-1
This project adopts Clean Architecture principles and uses Provider as a state manager.
Clean Architecture
The code is organized in layers to isolate the core business logic from external details:
- Presentation Layer: Contains the Flutter Widgets and Providers/ViewModels.
- Data Layer: Manages data acquisition and storage, implementing the Repositories defined in the domain through DataSources (APIs, local databases).
State Management with Provider
Provider integrates to simplify and optimize the management of changing data. It allows you to efficiently share application state (such as chat history or settings) between widgets, notifying and updating only the components affected by a change, improving performance and maintainability.
application structure:
.
├── android - It contains file required to run the application on an android platform.
├── assets - It contains all images and fonts of your application.
├── ios - It contains files required to run the application on an iOS platform.
├── lib - Most important folder in the application, used to write most of the Dart code...
├── main.dart - Starting point of the application.
├──core
| ├──app_export.dart - It contains commonly used file imports.
| ├── constants - It contains static constant class file.
| ├── utils - It contains common files and utilities of the application.
├──presentation - It contains widgets of the screens.
├──routes - It contains all the routes of the application.
├──theme - It contains app theme and decoration classes.
├── widgets - It contains all custom widget classes.
Prerequisites
- Operating System: Android, iOS
- Flutter SDK: Version 3.27.0 or higher. Make sure the stable channel is set up and that you have Windows support enabled (Flutter Doctor should show [√] Windows Version).
- IDE: Visual Studio Code or Android Studio/IntelliJ with Flutter and Dart plugins.
Installation and Execution:
- Clone the repository:
git clone ""
- Get Flutter dependencies:
flutter pub get
- Run the application:
# Para ejecutar en modo desarrollo
flutter run
# Para generar una compilación de release
flutter build apk --release
- if your code is not formatted then run following command in your terminal to format code.
dart format .
