This is the Mobile Developer test task for Oxymon Solutions.
Oxymon solutions enriches the life of individuals and makes financial processes simple, easy and accessible at the time needed.
Giving Financial Power To All with personalized financial solutions which are easily accessible.
- Loans
- Savings
- Agent Banking
Flutter is an open source framework by Google for building beautiful, natively compiled, multi-platform applications from a single codebase.
This project is built with flutter.
To check if you have flutter installed, run
flutter doctor
if you don't have flutter installed and setup, follow this: How to setup Flutter
Step 1:
Download or clone this repo by using the link below:
https://github.com/JustineUgo/oxyloan.git
Step 2:
Go to project root and execute the following command in console to get the required dependencies:
flutter pub get
Step 3:
Connect your mobile phone or emulator and run this command:
flutter run
- Home - Loan details, application
- Authentication - covers authentication
- Onboarding - step-by-step intro
- Framewort: Flutter > 2.5 with Null Safety
- Architectural pattern: MVC(Model-View-Controller)
- Storage(local): GetStorage
- State management: GetX
- Backend: Firebase
Here is the core folder structure which flutter provides.
flutter-app/
|- android
|- assets
|- build
|- ios
|- lib
|- test
|- web
Here is the folder structure we have been using in this project
lib/app
|- data/
|- modules/
|- routes.dart
Now, lets dive into the lib folder which has the main code for the application.
1- util - All the application level constants are defined in this directory with-in their respective files. This directory contains the constants for `api endpoints`, `preferences` etc.
2- data - Custom widgets and functions used across the modules of the app.
3- modules - Contains the 3 different modules of the app.
4 - routes.dart — This file contains all the routes for your application.
Contains the 3 different modules of the appplication.
modules/
|- authentication/
|- home/
|- onboarding
Folders found in each module:
controllers - this is where the logic of the app is written.
views - contains the ui of the module.
providers — contains the network calls.
models - contains the application's dynamic data structure
This file contains all the routes for your application.
routes/
|- app_pages.dart
|- app_routes.dart
This is the starting point of the application. All the application level configurations are defined in this file i.e, theme, routes, title, orientation etc.
All images where gotten from Freepik
I will be happy to answer any questions that you may have on this project. 🙂
If you liked my work, don’t forget to ⭐ star the repo.