FoodPilotPro Documentation
๐Ÿ“ฆ CodeCanyon Premium Item

FoodPilotPro

Complete multi-platform restaurant management system. Includes Laravel admin API, Next.js customer web app, and Flutter mobile app for Android & iOS.

๐Ÿฆ Flutter 3.x โšก Laravel 11 โ–ฒ Next.js 14 ๐Ÿค– Android ๐ŸŽ iOS
๐Ÿ“–

Introduction

FoodPilotPro is a complete multi-platform restaurant management system consisting of three interconnected applications:

โšก

Admin Panel

Laravel backend API + admin dashboard for restaurant owners and managers.

โ–ฒ

Customer Web App

Next.js web application for customers to browse menus and place orders.

๐Ÿฆ

Mobile App

Flutter app for Android & iOS โ€” full ordering experience on mobile.

All three apps communicate through the Laravel REST API. Follow this documentation to install and configure each component in the correct order.

๐Ÿ—๏ธ

System Architecture

All platforms connect to one Laravel REST API. Install the API first before configuring the web or mobile apps.

โ–ฒ Next.js App
โ† REST โ†’
โšก Laravel API
โ† REST โ†’
๐Ÿฆ Flutter App

Replace with actual architecture diagram image

What's Included

  • โœ“ Laravel API source code
  • โœ“ Next.js customer web app
  • โœ“ Flutter mobile app (Android + iOS)
  • โœ“ Postman API collection
  • โœ“ Documentation

Tech Stack

  • โ€ข PHP 8.2+ / Laravel 11
  • โ€ข Node.js 18+ / Next.js 14
  • โ€ข Flutter 3.x / Dart
  • โ€ข MySQL 5.7+ / MariaDB
Admin Panel โ€” Laravel
โœ…

Server Requirements

Verify your hosting environment before installation.

PHP & Extensions

  • โœ“ PHP 8.2 or higher
  • โœ“ OpenSSL
  • โœ“ PDO Extension
  • โœ“ Mbstring Extension
  • โœ“ Tokenizer Extension
  • โœ“ XML Extension
  • โœ“ JSON Extension
  • โœ“ GD / Imagick
  • โœ“ Fileinfo Extension
  • โœ“ CURL Extension

Database & Server

  • โœ“ MySQL 5.7+ or MariaDB
  • โœ“ Composer 2.x
  • โœ“ Apache or Nginx
  • โœ“ SSL Certificate (HTTPS)
  • โœ“ 512MB+ RAM
  • โœ“ SSH or Terminal access
๐Ÿš€

Installation Guide

Deploy the Laravel backend on your server step by step.

1

Download from Envato

Log in to your CodeCanyon account โ†’ Downloads โ†’ FoodPilotPro โ†’ Download All Files & Documentation. Extract the ZIP locally.

2

Create API Subdomain

From cPanel / DirectAdmin, create a subdomain and point it to your API folder:

api.yourdomain.com  โ†’  public_html/api
3

Upload Backend Files

Upload laravel-backend.zip into the API folder via File Manager or FTP, then extract it.

4

Create MySQL Database

cPanel โ†’ MySQL Database Wizard โ†’ create a new database, user, and assign All Privileges. Save credentials for the next step.

5

Configure .env File

Copy .env.example โ†’ .env and fill in your values:

APP_NAME=FoodPilotPro
APP_ENV=production
APP_DEBUG=false
APP_URL=https://api.yourdomain.com

DB_CONNECTION=mysql
DB_HOST=localhost
DB_PORT=3306
DB_DATABASE=your_database
DB_USERNAME=your_username
DB_PASSWORD=your_password

MAIL_MAILER=smtp
MAIL_HOST=smtp.mailtrap.io
MAIL_PORT=587
MAIL_USERNAME=your_email
MAIL_PASSWORD=your_password
MAIL_FROM_ADDRESS=no-reply@yourdomain.com
6

Run Artisan Commands

Via SSH terminal or hosting terminal:

composer install --optimize-autoloader --no-dev
php artisan key:generate
php artisan migrate --force
php artisan db:seed --force
php artisan storage:link
php artisan config:cache
php artisan route:cache
php artisan optimize
7

Set Folder Permissions

chmod -R 775 storage bootstrap/cache
chown -R www-data:www-data storage bootstrap/cache
โœ“

Test the API

Import the included Postman collection and test GET /api/health. You should receive a 200 OK response.

โš ๏ธ

Important: Ensure storage link is created, folder permissions are correct, and APP_DEBUG=false in production to prevent exposing sensitive data.

โš™๏ธ

Admin Configuration

Default Admin Credentials

Email:    admin@foodpilotpro.com
Password: password

Change these immediately after first login.

Pusher โ€” Real-time Notifications (Optional)

BROADCAST_DRIVER=pusher
PUSHER_APP_ID=your_app_id
PUSHER_APP_KEY=your_app_key
PUSHER_APP_SECRET=your_app_secret
PUSHER_APP_CLUSTER=mt1

Firebase Push Notifications (Optional)

FIREBASE_PROJECT_ID=your_project_id
FIREBASE_SERVER_KEY=your_server_key
โœจ

Admin Panel Features

Overview of the Laravel admin dashboard capabilities. Replace placeholders with actual screenshots.

๐Ÿ“Š Analytics Dashboard

Add screenshot here
./image/admin/dashboard.png

๐Ÿ“Š Overview

Analytics Dashboard

Real-time bird's-eye view of your restaurant performance with key business metrics and sales data.

  • โœ“ Daily, weekly, monthly revenue charts
  • โœ“ Total orders and completion rate
  • โœ“ Top-selling menu items ranking
  • โœ“ Recent order activity feed
  • โœ“ New customer growth graph
๐Ÿฝ๏ธ Menu Management

Add screenshot here
./image/admin/menu.png

๐Ÿฝ๏ธ Menu

Menu Management

Full control over your food catalog with rich media support and real-time availability management.

  • โœ“ Add/edit items with images and descriptions
  • โœ“ Organize by categories and subcategories
  • โœ“ Set prices, discounts, and add-ons
  • โœ“ Toggle item availability instantly
  • โœ“ Manage variants and portion options
๐Ÿ“ฆ Order Management

Add screenshot here
./image/admin/orders.png

๐Ÿ“ฆ Orders

Order Management

Process, track, and manage every order from a single streamlined interface with real-time updates.

  • โœ“ Real-time incoming order notifications
  • โœ“ Status pipeline: pending โ†’ confirmed โ†’ delivered
  • โœ“ Assign orders to delivery drivers
  • โœ“ Itemized order detail view
  • โœ“ Export order reports as CSV
๐Ÿ‘ฅ User Management

Add screenshot here
./image/admin/users.png

๐Ÿ‘ฅ Users

User & Role Management

Manage all platform users with granular role-based access control and full activity oversight.

  • โœ“ Customer accounts and order history
  • โœ“ Delivery driver profiles and assignments
  • โœ“ Admin roles with permission levels
  • โœ“ Suspend / activate accounts instantly
  • โœ“ User activity and login logs
๐Ÿช Restaurant Settings

Add screenshot here
./image/admin/settings.png

๐Ÿช Settings

Restaurant Settings

Configure every aspect of your restaurant operation from one centralized settings panel.

  • โœ“ Operating hours and holiday schedules
  • โœ“ Delivery zones and radius configuration
  • โœ“ Payment method on/off toggles
  • โœ“ Multiple branch / location management
  • โœ“ Tax, VAT, and delivery fee settings
๐ŸŽŸ๏ธ Promotions & Coupons

Add screenshot here
./image/admin/promos.png

๐ŸŽŸ๏ธ Promotions

Promotions & Coupons

Run targeted promotions and discount campaigns to boost sales and improve customer retention.

  • โœ“ Percentage and flat-amount discount codes
  • โœ“ Coupon code generation and management
  • โœ“ Expiry dates and per-user usage limits
  • โœ“ Minimum order value rules
  • โœ“ Homepage banner promotion slots
๐Ÿ’ก

Replace each placeholder <div> with <img src="./image/admin/NAME.png" class="w-full h-full object-cover" />.

Client App โ€” Next.js
โœ…

Requirements

Development Machine

  • โœ“ Node.js 18.x or higher
  • โœ“ npm 9+ or Yarn 1.22+
  • โœ“ Git

Hosting

  • โœ“ VPS with Node.js, or
  • โœ“ Vercel / Netlify (recommended)
  • โœ“ SSL Certificate
๐Ÿš€

Installation Guide

1

Extract & Install Dependencies

cd nextjs-client
npm install
2

Configure Environment

Copy .env.example โ†’ .env.local:

NEXT_PUBLIC_API_URL=https://api.yourdomain.com
NEXT_PUBLIC_APP_NAME=FoodPilotPro
NEXT_PUBLIC_APP_URL=https://yourdomain.com

# Google Maps (delivery tracking)
NEXT_PUBLIC_GOOGLE_MAPS_KEY=your_google_maps_api_key

# Payment Gateway
NEXT_PUBLIC_STRIPE_KEY=pk_live_xxxxxxxxxxxx
STRIPE_SECRET_KEY=sk_live_xxxxxxxxxxxx
3

Run Development Server

npm run dev
# Opens at http://localhost:3000
4

Build for Production

npm run build
npm run start
โ–ฒ

Deploy to Vercel (Recommended)

npm i -g vercel
vercel login
vercel --prod

Add env variables in Vercel โ†’ Project โ†’ Settings โ†’ Environment Variables.

โš™๏ธ

Client Configuration

App Branding Config

// src/config/app.ts
export const APP_CONFIG = {
  name: "FoodPilotPro",
  tagline: "Order food online",
  logo: "/assets/logo.png",
  primaryColor: "#f98819",
};

Replace Logo & Favicon

  • /public/logo.png โ€” Main logo
  • /public/favicon.ico โ€” Browser tab icon
  • /public/og-image.png โ€” Social share image (1200ร—630px)
โœจ

Client App Features

Key screens of the Next.js customer web application.

๐Ÿ  Homepage

Add screenshot here
./image/client/homepage.png

๐Ÿ  Homepage

Dynamic Homepage

The first thing customers see โ€” designed to drive engagement with promotions and fast food discovery.

  • โœ“ Hero banner with custom promotions
  • โœ“ Featured restaurant listings
  • โœ“ Quick category navigation bar
  • โœ“ Top-rated food items grid
  • โœ“ Search bar with instant results
๐Ÿ• Menu & Categories

Add screenshot here
./image/client/menu.png

๐Ÿ• Menu

Menu & Categories

Clean, fast browsing experience for customers to explore the full menu with smart filtering.

  • โœ“ Category and subcategory filtering
  • โœ“ Search by food name or ingredient
  • โœ“ Dietary badges (Vegan, Halal, Spicy)
  • โœ“ Food item detail modal with images
  • โœ“ Add to cart with custom options
๐Ÿ›’ Cart & Checkout

Add screenshot here
./image/client/checkout.png

๐Ÿ›’ Checkout

Cart & Checkout

Frictionless checkout flow from cart review to payment confirmation in just a few taps.

  • โœ“ Cart item management and quantities
  • โœ“ Apply coupon codes
  • โœ“ Saved delivery address selection
  • โœ“ Multiple payment methods
  • โœ“ Order summary and total breakdown
๐Ÿ“ Order Tracking

Add screenshot here
./image/client/tracking.png

๐Ÿ“ Tracking

Real-Time Order Tracking

Customers can follow their order every step of the way with live map and status updates.

  • โœ“ Step-by-step order status timeline
  • โœ“ Live map with driver location
  • โœ“ Estimated arrival time
  • โœ“ Push notification updates
  • โœ“ Contact driver option
๐Ÿ‘ค User Profile

Add screenshot here
./image/client/profile.png

๐Ÿ‘ค Profile

Customer Profile

A personalized space for customers to manage their account, orders, and preferences.

  • โœ“ Edit profile and contact information
  • โœ“ Manage saved delivery addresses
  • โœ“ Full order history with reorder
  • โœ“ Wallet balance and top-up
  • โœ“ Notification preferences
๐Ÿ” Authentication

Add screenshot here
./image/client/auth.png

๐Ÿ” Auth

Authentication Flow

Secure, smooth sign-up and login experience with OTP phone verification and social login options.

  • โœ“ Email and phone registration
  • โœ“ OTP-based phone verification
  • โœ“ Social login (Google, Facebook)
  • โœ“ Forgot password with email reset
  • โœ“ Remember device for quick login
๐Ÿ’ก

Replace each placeholder <div> with <img src="./image/client/NAME.png" class="w-full h-full object-cover" />.

Mobile App โ€” Flutter
๐Ÿ”—

Base URL Setup

Connect the Flutter app to your deployed Laravel API.

// lib/utils/app_constant.dart
class AppConstant {
  static const String baseUrl = "https://api.yourdomain.com";
  static const String appName = "FoodPilotPro";
}
โš ๏ธ

Base URL must point to the API subdomain, not the web app domain. No trailing slash.

โœ๏ธ

Change App Name

1. Flutter constant

// lib/utils/app_constant.dart
static const String appName = "YourAppName";

2. Android

// android/app/src/main/AndroidManifest.xml
android:label="YourAppName"

3. iOS

// ios/Runner/Info.plist
<key>CFBundleName</key>
<string>YourAppName</string>
๐Ÿ“ฆ

Change Package Name

Update Android namespace globally before publishing.

// android/app/build.gradle
android {
  namespace = "com.yourcompany.yourapp"
  defaultConfig {
    applicationId = "com.yourcompany.yourapp"
  }
}

Global Find & Replace

Windows/Linux: Ctrl+Shift+R macOS: โŒ˜+Shift+R

Verify these files after replacement:

  • android/app/build.gradle
  • android/app/src/main/AndroidManifest.xml
  • android/app/src/debug/AndroidManifest.xml
  • android/app/src/main/java/ (or kotlin/)
flutter clean && flutter pub get && flutter run
๐ŸŽจ

Change App Icon

Generate icon sets and replace for both platforms.

Generate all sizes with appicon.co โ€” upload a 1024ร—1024 PNG and download all sizes.

๐Ÿค– Android

/android/app/src/main/res/

๐ŸŽ iOS

/ios/Runner/Assets.xcassets/
flutter clean && flutter pub get && flutter run
๐Ÿค–

Build for Android

Release APK

flutter build apk --release
# Output: build/app/outputs/flutter-apk/app-release.apk

Split APKs (smaller download size)

flutter build apk --target-platform android-arm,android-arm64,android-x64 --split-per-abi

AAB โ€” Google Play Store

Create signing keystore:

# macOS/Linux
keytool -genkey -v -keystore ~/upload-keystore.jks \
  -keyalg RSA -keysize 2048 -validity 10000 -alias upload

# Windows PowerShell
keytool -genkey -v -keystore $env:USERPROFILE\upload-keystore.jks `
  -storetype JKS -keyalg RSA -keysize 2048 -validity 10000 -alias upload

Create android/key.properties:

storePassword=your_store_password
keyPassword=your_key_password
keyAlias=upload
storeFile=../upload-keystore.jks

Build:

flutter build appbundle
# Output: build/app/outputs/bundle/release/app-release.aab
๐ŸŽ

Build for iOS

โš ๏ธ

Requires macOS with Xcode 14+ and an active Apple Developer account ($99/year).

1

Create Certificate Signing Request

Keychain Access โ†’ Certificate Assistant โ†’ Request a Certificate from a Certificate Authority โ†’ Save to disk.

2

Create iOS Distribution Certificate

Apple Developer portal โ†’ Certificates, IDs & Profiles โ†’ Create iOS Distribution certificate using your CSR file.

3

Open in Xcode

open ios/Runner.xcworkspace

Set Bundle Identifier, Version, Team, and Signing Certificate in target settings.

4

Build & Archive

flutter build ipa

Then: Xcode โ†’ Product โ†’ Archive โ†’ Distribute App โ†’ App Store Connect โ†’ Upload.

โœจ

Mobile App Features

Key screens of the Flutter app โ€” Android & iOS. Replace placeholders with actual device screenshots.

๐Ÿ  Home Screen

./image/mobile/home.png

๐Ÿ  Home

Home Screen

The app's landing screen โ€” fast food discovery with promotions, categories, and featured items.

  • โœ“ Promotional banners carousel
  • โœ“ Category quick-select row
  • โœ“ Featured and recommended items
  • โœ“ Search bar with suggestions
  • โœ“ Location-aware restaurant listings
๐Ÿ• Food Menu

./image/mobile/menu.png

๐Ÿ• Menu

Food Menu

Rich browsing experience with search, filters, and detailed food item views โ€” all in native mobile speed.

  • โœ“ Browse by category tabs
  • โœ“ Search by food name or keyword
  • โœ“ Dietary and allergy filters
  • โœ“ Item detail screen with add-ons
  • โœ“ Quantity selector and notes
๐Ÿ›’ Cart

./image/mobile/cart.png

๐Ÿ›’ Cart

Cart

Clear cart review screen with inline editing before the customer proceeds to checkout.

  • โœ“ Item list with swipe-to-delete
  • โœ“ Inline quantity adjustments
  • โœ“ Subtotal and delivery fee breakdown
  • โœ“ Coupon code entry field
  • โœ“ Proceed to checkout button
๐Ÿ’ณ Checkout

./image/mobile/checkout.png

๐Ÿ’ณ Checkout

Checkout

Single-screen checkout flow โ€” address, payment method, and order confirmation in one place.

  • โœ“ Saved and new delivery addresses
  • โœ“ Payment method selection
  • โœ“ Order notes / special instructions
  • โœ“ Final total with taxes
  • โœ“ Place order confirmation button
๐Ÿ“ Live Tracking

./image/mobile/tracking.png

๐Ÿ“ Tracking

Live Order Tracking

Full-screen map view with real-time driver location and animated order status progression.

  • โœ“ Live driver location on map
  • โœ“ Animated status steps
  • โœ“ Estimated time of arrival
  • โœ“ Push notification at each status change
  • โœ“ Contact driver / support button
๐Ÿ“‹ Order History

./image/mobile/orders.png

๐Ÿ“‹ Orders

Order History

Full history of past orders with reorder in one tap and detailed receipt view per order.

  • โœ“ Paginated order history list
  • โœ“ Order status badge per item
  • โœ“ Detailed receipt / invoice view
  • โœ“ One-tap reorder button
  • โœ“ Rate and review after delivery
๐Ÿ‘ค Profile

./image/mobile/profile.png

๐Ÿ‘ค Profile

Profile & Account

Centralized account screen where users manage personal info, addresses, and preferences.

  • โœ“ Edit name, phone, and avatar
  • โœ“ Manage saved delivery addresses
  • โœ“ Wallet balance and transactions
  • โœ“ App language and notification settings
  • โœ“ Logout and account deletion
๐Ÿ”” Notifications

./image/mobile/notif.png

๐Ÿ”” Notifications

Push Notifications

Keep customers informed at every stage with targeted push notifications and in-app alerts.

  • โœ“ Order confirmed / ready / delivered alerts
  • โœ“ Promotional offer notifications
  • โœ“ In-app notification centre
  • โœ“ Mark as read / clear all
  • โœ“ Per-type notification preferences
๐Ÿ’ก

Replace each placeholder <div> with <img src="./image/mobile/NAME.png" class="w-full h-full object-cover rounded-2xl" />. Recommended ratio: 9:19.5.

๐Ÿ“‹

Changelog

v1.0.0 Initial Release
  • โœ“ Flutter mobile app (Android + iOS)
  • โœ“ Laravel 11 REST API backend
  • โœ“ Next.js 14 customer web app
  • โœ“ Admin dashboard with full order management
  • โœ“ Real-time order tracking
  • โœ“ Push notification support

Update changelog on every release to keep buyers informed.

Thank you for choosing FoodPilotPro. For support, visit your CodeCanyon purchase page.