DaysLeft Mobile App Development
For those interested the application is built using the latest version of Flutter (as of Jun 18th 2022). The architecture uses flutter_bloc and is split into 3 main layers
- - data layer
- - domain layer
- - feature layer
The project is split across multiple packages to allow for unit testing of each individual dependency.
This consists of the trip_api, local_trip_api and the countries_api packages. The local_trip_api being an implementation of trip_api using the Flutter shared preferences package.
This contains the trip_repository and is responsible for interacting with the trip and Schengen country information in the data layer.
This has all the application specific features and holds the UI and business logic. This is separated into feature directories found in the main src directory:
- - home manages the main screen shown to the user (added for a new planned feature)
- - trip_home used to manage the list of trips
- - edit_trip manages the creation of new trips and editing of existing trips
- - trip_summary used to maintain the trip calculation information shown to the user