InstaHaul
  • Introduction
  • Usage Flows (FlowCharts)
  • Firebase
    • Firebase
    • Firebase firestore database
    • Firebase Security
    • Firebase Storage
    • Firestore indexes
    • Chat & Live tracking
  • Backend
    • Prerequisite
    • VPS/Shared Hosting
    • Installation
    • Composer & Node Packages
    • Database Configuration
    • GUI Installer
    • Timezone
    • Firebase
    • Web Notification
    • Firebase Forgot password
    • Change Backend Color
    • Reskin Mobile App
    • Terminal
      • Commands
    • Screenshots
    • Order schedule
    • CRON job
    • Clear Data (Users/Orders etc)
    • Email Server Settings
    • SMS Gateway
    • Payment Gateways
    • Webhooks - Payment gateway
    • Language / Translation
    • HOW TO UPDATE
    • In-App Live chat/support
    • Geocoding and Place search
    • Features
      • Firebase/Notification Delay
      • Fleet Management
      • Loyalty points
      • Home Screen Design
      • Featured Vendors
      • Trip recalculation/Outstanding payments
      • Switch between Taxi/Regular Driver
      • Data Translation - Backend
  • Flutter App
    • Getting Started
    • Steps
    • Directory Structure
    • Change App Name & ID
    • Change App icon & splash
    • App Color / Theme
    • Connect To Backend
    • Firebase
    • Firebase Auth - Phone
    • Firebase Phone OTP - Android
    • Firebase Phone OTP - iOS
    • Firebase Notification iOS
    • Share link - Firebase dynamic link
    • Social Media Login
      • Google login
      • Facebook Login
      • Sign-In with Apple
    • Google Map
    • Change App Language
    • Notification Sound
    • Custom Translation
    • Change App Font
    • Running on VS Code
    • Running on Android Studio
    • Generate Android Release App
    • Upload to Apple App Store
    • Screenshots
  • Demo Accounts
  • FAQs
    • Backend Image not working
    • Backend Backup not working
    • Upgrade without losing data
    • Backend Rollback
    • Blank Home screen
    • Custom Token
    • Product price zero(0) in details
    • Auto-cancel Not working
    • Pharmacy vendor
    • Vendor default rating
    • App logins
    • Error ==> type 'String' is not a subtype of type 'int'
    • NDK version error
    • Push Notification
    • Delivery Zone Map error
    • HOW TO UPDATE ADMINEND
    • Driver app rejected by Google
    • Cron job error
    • Auth pages Not working - App
  • HOW-TO
    • Onboarding Settings
    • Earning
      • Drivers
    • Enforce CASH Payment For Delivery Fee Only
    • System Contact Email
    • Driver Matching Flow
  • Extensions
    • Driver tracking extensions
    • Paymongo Gateway
    • Mercadopago Gateway
    • Nagad [Bangladeshi]
    • Instamojo - Payment
    • Paytrail
    • Paymaya Gateway
    • Emailer
    • External Notifier
      • Slack Setup
      • Telegram Setup
  • Upgrades
    • How to update
    • Important: Backend VPS/Shared hosting
    • 1.0.1
    • 1.1.00
    • Change logs
Powered by GitBook
On this page
  • Constants
  • Models
  • Requests
  • Services
  • Translations
  • Utils
  • View_models
  • Views
  • Widgets
  1. Flutter App

Directory Structure

PreviousStepsNextChange App Name & ID

Constants

Contains all constant value for the app like app colors, app images, apis, app theme etc.

Models

Data model are defined for easier data handling and manipulation.

Requests

Contains all the api requests to fetch fetch and send data to and fro the backend api.

Services

Contains app services files for manipulating and interacting with different part of the part during use.

For example there is firebase.service.dart which provides the app with interaction with firebase cloud messaging service.

Translations

This folder contains all the translated values for the strings used throughout the app. Current the app is by default translated to support 7 different languages:

  1. English

  2. French

  3. Spanish

  4. German

  5. Portuguese

  6. Arabic

  7. Korean (South Korea)

Utils

Contains all app utility functions like ui spacer for adding space within the app widgets.

View_models

ViewModel manages the state of the View, business logic, and any other logic as required from user interaction. It does this by making use of the services.

Views

Contains all screens/pages/views of the application. Example is LoginPage, RegisterPage and so on.

Views are grouped into pages and pages are grounded base on functionality. For example Login & Register Page are both grouped under the auth folder in the views/pages folder

Widgets

Contains all UI widget used in the application like: Buttons, TextFields, BottomSheet views etc

Fuodz is using the . All business logic code is stored in the view_models.

Stacked State management package