Installation Guide

Follow these steps to deploy the Laravel API backend and configure the Flutter mobile apps.

Single-Page View

1. Backend & Server Setup (Laravel)


Server Requirements
  • PHP 8.1 / 8.2+ with BCMath, Ctype, Fileinfo, JSON, Mbstring, OpenSSL, PDO, Tokenizer, XML, cURL, GD/Imagick extensions
  • MySQL 5.7+ / MariaDB 10.3+
  • Composer 2.x
Step-by-Step Installation
  1. Upload the backend/ folder to your server document root.
  2. Configure permissions for the storage and cache folders:
    chmod -R 775 storage bootstrap/cache
  3. Create a MySQL database and configure your .env file:
    DB_CONNECTION=mysql DB_HOST=127.0.0.1 DB_PORT=3306 DB_DATABASE=your_database_name DB_USERNAME=your_database_user DB_PASSWORD=your_database_password
  4. Run composer dependencies & database migrations:
    composer install --no-dev --optimize-autoloader php artisan key:generate php artisan migrate --seed php artisan storage:link
  5. Configure Cron Job for automated tasks and queues:
    * * * * * cd /path/to/backend && php artisan schedule:run >> /dev/null 2>&1

2. Flutter Mobile Apps Configuration


Prerequisites
  • Flutter SDK 3.24.x installed and verified via flutter doctor
  • Android Studio or Visual Studio Code with Flutter plugins
  • Xcode (for iOS release builds on macOS)
App Setup Steps
  1. Open customer_app or delivery_boy_app in your IDE.
  2. Run flutter pub get to install project dependencies.
  3. Update the backend API base URL in lib/config/api_constants.dart:
    static const String baseUrl = 'https://api.yourdomain.com/api/v1/';
  4. Firebase Configuration:
    • Place google-services.json in android/app/
    • Place GoogleService-Info.plist in ios/Runner/
  5. Google Maps Key: Add your Google Maps API key to android/app/src/main/AndroidManifest.xml and ios/Runner/AppDelegate.swift.
  6. Build and run the project:
    flutter run