This application displays a list of Brazilian postal codes (CEPs) in a minimalist, read-focused style, without images. It allows you to view, create, and delete CEPs, functioning offline. Developed in Flutter, it uses Clean Architecture as its architectural pattern and Bloc for state management.
- Language: Dart
- Framework: Flutter
- Architecture: Clean Architecture
- State management: flutter_bloc
- Dependency injection: get_it
- Data persistence: shared_preferences
- HTTP: http
- Offline Mode: Support for operation without an internet connection
lib/
├── core/ # Core functionalities
│ ├── controller/ # State management (Cubits)
│ ├── theme/ # Global styles
│ └── util/ # Helper functions
├── data/ # Data sources and repositories
│ ├── datasources/ # Remote and local data sources
│ ├── models/ # Data models
│ └── repositories/ # Implementation of repositories
├── domain/ # Business logic
│ ├── entities/ # Business entities
│ ├── repositories/ # Abstract repositories
│ └── usecases/ # Business use cases
├── presentation/ # UI layer
│ ├── bloc/ # BLoC for state management
│ ├── pages/ # Application screens
│ └── widgets/ # Reusable widgets
├── injections.dart # Dependency injection setup
└── main.dart # Main execution file
The following libraries were used in the project:
dependencies:
flutter:
sdk: flutter
http: ^1.2.2
flutter_bloc: ^8.1.6
equatable: ^2.0.5
get_it: ^7.7.0
shared_preferences: ^2.2.2
flutter_svg: ^2.2.0
url_launcher: ^6.3.0
dev_dependencies:
flutter_test:
sdk: flutter
flutter_lints: ^5.0.0
flutter_launcher_icons: ^0.14.4
bloc_test: ^9.1.7
mockito: ^5.5.0
build_runner: ^2.7.0The project includes unit and widget tests using flutter_test and mockito.
To run the tests:
flutter test-
Clone the repository:
git clone https://github.com/your-username/via_cep_plus.git cd via_cep_plus -
Install the dependencies:
flutter pub get
-
Run the application:
flutter run
Feel free to open issues or submit PRs with improvements!
This project is under the MIT license.


