lib/
|- core/
| |- models/ # Domain models or entities
| |- repositories/ # Abstract interfaces for data access
| |- usecases/ # Business logic or use case implementations
| |- errors/ # Custom error classes
|
|- data/
| |- datasources/ # Data sources (e.g., API clients, local storage)
| |- repositories/ # Data repository implementations
|
|- presentation/
| |- pages/ # UI pages or screens
| |- widgets/ # Reusable UI components
| |- presenters/ # Presenters or view models
| |- blocs/ # BLoC (Business Logic Component) implementations
| |- views/ # Views or UI-related classes (e.g., custom widgets)
|
|- di/ # Dependency injection configuration
|
|- utils/ # Utility functions or helper classes
|
|- main.dart # Entry point of the application