Requirements & Stack
What you need on the server and on your machine before installing any part of CargoPRO.
Server requirements (website)
PHP 8.2+
With pdo_mysql, mbstring, fileinfo,
openssl, curl, zip and
gd/imagick extensions. PHP 8.3/8.4 also work.
MySQL 5.7+ / MariaDB 10.3+
One empty database with a dedicated user. The installer runs all migrations automatically β no manual SQL import needed.
Web server
Apache (with mod_rewrite) or Nginx. Document root must
point at the public/ folder of the extracted package.
SMTP (optional but recommended)
Any SMTP account for email notifications and password resets.
Configured during installation or later in .env.
HTTPS + cron (recommended)
An SSL certificate for the domain and one cron entry for the Laravel
scheduler (* * * * * php artisan schedule:run).
Firebase project (for push)
Only needed for real push notifications in the mobile apps. See the Firebase guide.
Third-Party Services Notice
CargoPRO optionally integrates with third-party services β Google Maps, Firebase (push notifications), Twilio (SMS), WhatsApp, Stripe, PayPal, Paystack, and SMTP email providers. These services are not included in the purchase price: you must register your own accounts and API keys, and each provider bills its own fees directly to you (e.g. per-transaction fees for payment gateways, per-message costs for SMS/WhatsApp, usage-based pricing for Google Maps).
None of them are required to run the system β built-in payment methods (cash, bank transfer, cash on delivery), standard SMTP email, and in-app notifications work out of the box. The providers' pricing and terms may change at any time and are outside our control.
The stack
| Product | Built with | Notes |
|---|---|---|
| Admin panel (website) | Laravel 12, MySQL, Blade | Serves the REST API at /api too |
| User app | Flutter (Dart 3.11+, Flutter 3.41+) | Android Β· iOS Β· web builds possible |
| Driver app | Flutter (same toolchain) | Android Β· iOS; portrait-only, offline sync queue |
| Push | Firebase Cloud Messaging | HTTP v1 service account JSON configured in Tools β FCM |
For building the apps
Install Flutter 3.41+
Follow flutter.dev/install
and run flutter doctor until it reports no blocking issues.
Install Android Studio (or the Android SDK)
Needed for the Android toolchain, SDK and an emulator if you want one. Accept the SDK licenses.
For iOS builds: a Mac with Xcode
iOS apps can only be built on macOS. The FlutterFire CLI
(dart pub global activate flutterfire_cli) is also
needed only when you configure Firebase.
cargoproadmin/ β the Laravel website Β·
cargoproapp/ β the customer app Β·
cargoprodriver/ β the driver app.