composer.json and package.json. Use it to understand runtime requirements, evaluate third-party dependencies, and plan integrations.
Runtime requirements
| Requirement | Version |
|---|---|
| PHP | 8.1+ |
| MySQL | 8.0+ |
| Redis | 6.0+ (recommended) |
| Node.js | 16.x+ |
| Composer | Latest stable |
Major categories
Backend
Laravel 11 · PHP 8.1+ · MySQL 8.0+ · Redis
Frontend
Blade · Bootstrap 5 · Vite 4 · Vanilla JS
Payments
37 gateway integrations — Stripe, Flutterwave, Razorpay, and more
Communications
Email: Mailgun, SendGrid, MailerSend, Postmark, Sendinblue · SMS: Twilio, Infobip, Plivo, Vonage · Push: Firebase
Backend
Framework and core
| Package | Version | Purpose |
|---|---|---|
laravel/framework | ^11.23.0 | Application framework |
laravel/sanctum | ^4.0 | API token authentication |
laravel/socialite | ^5.16 | OAuth social login (Google, Facebook) |
laravel/tinker | ^2.8 | Interactive REPL |
laravel/ui | ^4.2 | Auth scaffolding |
doctrine/dbal | ^3.6 | Schema introspection for migrations |
guzzlehttp/guzzle | ^7.7 | HTTP client for external API calls |
symfony/http-client | ^6.3 | Symfony HTTP client (used by mailers) |
symfony/mailer | ^7.1.2 | Mail transport base |
Database and caching
| Package | Version | Purpose |
|---|---|---|
predis/predis | ^2.2 | Redis client for caching and queues |
yajra/laravel-datatables | 11.0 | Server-side DataTables for admin views |
Utilities
| Package | Version | Purpose |
|---|---|---|
intervention/image | ^2.7 | Image resizing and manipulation |
matthiasmullie/minify | ^1.3 | CSS/JS minification for dynamic assets |
stevebauman/purify | ^6.0 | HTML purification / XSS prevention |
pragmarx/google2fa | ^8.0 | TOTP-based two-factor authentication |
hisorange/browser-detect | ^4.4 | User agent and browser detection |
silviolleite/laravelpwa | ^2.0 | Progressive Web App manifest and service worker |
toin0u/geocoder-laravel | ^5.0 | Geocoding (IP-to-location) |
anhskohbo/no-captcha | ^3.7 | Google reCAPTCHA integration |
google/recaptcha | ^1.3 | reCAPTCHA server-side verification |
Translation
| Package | Version | Purpose |
|---|---|---|
stichoza/google-translate-php | ^5.2 | Google Translate API client |
Development only
| Package | Version | Purpose |
|---|---|---|
fakerphp/faker | ^1.9.1 | Fake data generation for seeders and tests |
laravel/pint | ^1.0 | PHP code style formatter (PSR-12) |
laravel/sail | ^1.18 | Docker-based local development environment |
phpunit/phpunit | ^10.1 | Test runner |
mockery/mockery | ^1.4.4 | Mocking library for unit tests |
nunomaduro/collision | ^8.4.0 | Improved CLI error output |
spatie/laravel-ignition | ^2.0 | Debug error pages |
Frontend
Build tooling
| Package | Version | Purpose |
|---|---|---|
vite | ^4.0.0 | Asset bundler and dev server |
laravel-vite-plugin | ^0.7.5 | Laravel integration for Vite |
sass | ^1.56.1 | SCSS compilation |
UI libraries
| Package | Version | Purpose |
|---|---|---|
bootstrap | ^5.2.3 | Responsive CSS framework |
@popperjs/core | ^2.11.6 | Tooltip and dropdown positioning (Bootstrap dependency) |
axios | ^1.1.2 | Promise-based HTTP client for AJAX calls |
Theme system
The Adventra theme is a custom Blade-based theme with:- Light / dark mode via
tripfy.js - Dynamic colour generation — primary and secondary colours are stored in the database and written to
public/assets/themes/adventra/css/tripfy.cssbyBasicControlController::generateDynamicCssPublic() - Multiple home page and listing layout variations selectable from the admin panel
- PWA support via a service worker and app manifest
Payment gateways
The platform ships with 37 gateway integrations underapp/Services/Gateway/. Each gateway implements a consistent interface for creating payments, handling IPN webhooks, and processing refunds.
International
| Gateway | PHP package | Notes |
|---|---|---|
| Stripe | stripe/stripe-php ^16.2 | Card payments, global |
| PayPal | (built-in via Guzzle) | Standard and Express Checkout |
| Authorize.Net | authorizenet/authorizenet ^2.0 | US-focused card processing |
| Mollie | mollie/laravel-mollie ^3.0.0 | Europe |
| Razorpay | razorpay/razorpay ^2.9 | India |
| Midtrans | midtrans/midtrans-php ^2.5 | Indonesia |
| Mercado Pago | (built-in) | Latin America |
| 2Checkout | (built-in) | Global |
| Skrill | (built-in) | Global digital wallet |
| Payeer | (built-in) | Global e-wallet |
| Perfect Money | (built-in) | Global e-currency |
| Free Kassa | (built-in) | Russia / CIS |
Africa-focused
| Gateway | PHP package | Notes |
|---|---|---|
| Flutterwave | flutterwavedev/flutterwave-v3 ^1.0 | Pan-African |
| CinetPay | cinetpay/cinetpay-php ^1.9 | West Africa |
| Paystack | (built-in) | Nigeria and beyond |
| Peach Payments | (built-in) | South Africa |
| PesaPal | (built-in) | East Africa |
| Monnify | (built-in) | Nigeria |
| Konnect | (built-in) | Tunisia |
| Voguepay | (built-in) | West Africa |
| Cashmaal | (built-in) | Pakistan / regional |
| FastPay | (built-in) | Bangladesh |
| IME Pay | (built-in) | Nepal |
| MyPay | (built-in) | Nepal |
| Khalti | (built-in) | Nepal |
Crypto
| Gateway | PHP package | Notes |
|---|---|---|
| CoinGate | coingate/coingate-php ^4.1 | 70+ cryptocurrencies |
| Coinbase Commerce | (built-in) | Coinbase-hosted payments |
| Binance Pay | (built-in) | Binance ecosystem |
| Blockchain.com | (built-in) | BTC / ETH direct |
| CoinPayments | (built-in) | Multi-coin |
| NowPayments | (built-in) | 300+ coins |
Other
| Gateway | Notes |
|---|---|
| Cash on Delivery | Manual cash payment flow |
| Cash on Delivery (Hosted) | Hosted confirmation page variant |
| PayTM | India UPI |
| PayU Money | India |
| Swagger | Internal test/mock gateway |
Communications
Email providers
TheMAIL_MAILER environment variable selects the active provider. All providers use the same Laravel Mail facade.
| Provider | Package |
|---|---|
| SMTP | Laravel built-in |
| Mailgun | symfony/mailgun-mailer ^6.3 |
| SendGrid | symfony/sendgrid-mailer ^6.3 |
| Postmark | symfony/postmark-mailer ^6.3 |
| MailerSend | mailersend/laravel-driver ^2.2 |
| Sendinblue | symfony/sendinblue-mailer ^6.3 |
| Mailchimp Mandrill | symfony/mailchimp-mailer ^6.3 |
SMS providers
TheSMS_METHOD environment variable selects the active provider.
| Provider | Package | Variable |
|---|---|---|
| Twilio | twilio/sdk ^7.7 | SMS_METHOD=twilio |
| Infobip | infobip/infobip-api-php-client 5.0.0 | SMS_METHOD=infobip |
| Plivo | plivo/plivo-php ^4.52 | SMS_METHOD=plivo |
| Vonage | vonage/client ^4.0 | SMS_METHOD=vonage |
Push notifications
| Service | Configuration variables |
|---|---|
| Firebase Cloud Messaging | FIREBASE_SERVER_KEY, FIREBASE_VAPID_KEY, FIREBASE_PROJECT_ID |
| Pusher (broadcasting) | PUSHER_APP_ID, PUSHER_APP_KEY, PUSHER_APP_SECRET |
Storage
File storage is abstracted via Laravel Flysystem. Switch drivers by changingFILESYSTEM_DISK in .env.
| Driver | Package | Environment variables |
|---|---|---|
| Local | Built-in | FILESYSTEM_DISK=local |
| AWS S3 | league/flysystem-aws-s3-v3 3.0 · aws/aws-sdk-php | AWS_* variables |
| DigitalOcean Spaces | aws/aws-sdk-php (S3-compatible) | DIGITALOCEAN_SPACES_* variables |
| FTP | league/flysystem-ftp 3.0 | FTP_* variables |
| SFTP | league/flysystem-sftp-v3 3.0 | SFTP_* variables |
Third-party integrations
| Service | Package / API | Purpose |
|---|---|---|
| Google Maps | GOOGLE_MAPS_API_KEY | Destination maps on package detail pages |
| Google Gemini AI | GOOGLE_GEMINI_API_KEY | AI-assisted package description and image generation (GeminiService) |
| Google Translate / Azure | stichoza/google-translate-php ^5.2 | Dynamic content translation (TRANSLATE_METHOD=azure) |
| Google reCAPTCHA | anhskohbo/no-captcha ^3.7 | Bot prevention on login and registration |
| Google OAuth | laravel/socialite ^5.16 | Social login |
| Facebook OAuth | laravel/socialite ^5.16 | Social login |
| Currency Layer | (via CurrencyLayerService) | Real-time currency conversion |