Skip to content

Requirements

Verify these before installation. ExchangePro will not run correctly on unsupported versions.

Server requirements

Backend (Laravel)

RequirementMinimumRecommended
PHP8.38.4+
Extensionsopenssl, pdo, mbstring, tokenizer, xml, ctype, json, bcmath, fileinfoSame
Composer2.xLatest
DatabaseMySQL 8+ / MariaDB 10.6+MySQL 8
Web serverNginx or ApacheNginx + PHP-FPM
Memory512 MB PHP memory_limit1 GB+ for production

Optional but useful:

  • Redis — caching/sessions (default config uses database cache/session)
  • Supervisor — queue workers if you use queued jobs heavily
  • Cron — required for automatic currency rate sync

Frontend (Nuxt)

RequirementMinimumRecommended
Node.js20.x22 LTS
npm / pnpm / yarn / bunAny modern package managerpnpm or npm
RAM (build)2 GB4 GB+ for nuxt build

The frontend is deployed as a Node SSR app (node .output/server/index.mjs) or you may host a pre-built output on a Node-capable host.

Software versions (shipped stack)

ComponentVersion in project
Laravel12.x
Nuxt4.3.x
Vue3.5.x

Hosting models

  • https://yourdomain.com → Nuxt frontend
  • https://api.yourdomain.com → Laravel backend

Configure CORS and Sanctum for the frontend origin.

Model B — Local development

  • Frontend: port 4000
  • Backend: port 8000 (or 4444 if you customized .env)

Model C — Shared hosting (limited)

Possible but harder: PHP for API on subdomain, Node for frontend on another service (Vercel, VPS, etc.). Shared hosts without Node cannot run the Nuxt server build.

Browser support

  • Chrome, Firefox, Safari, Edge (last two major versions)
  • Mobile responsive layouts for public site, dashboard, and admin

External services (optional)

ServiceUsed for
SMTP / mail APIPassword reset, verification codes, subscriber broadcast, user credentials email
ExchangeRate-APIAutomatic currency price sync
Google Cloud ConsoleGoogle OAuth
Meta for DevelopersFacebook OAuth

None of these are required for a basic install; exchanges can use manual rates only.

File permissions (Linux)

Backend writable paths:

text
backend/storage/          → 775 (www-data)
backend/bootstrap/cache/  → 775
backend/public/           → 755 (uploads create subdirs)

Directories created at runtime:

  • public/transaction-proofs/
  • public/images/avatars/
  • public/images/currencies/
  • public/images/settings/
  • public/images/legal-pages/

Pre-install checklist

  • [ ] PHP 8.3+ and Composer installed
  • [ ] Node 20+ installed
  • [ ] MySQL database and user created
  • [ ] Domain or local hosts planned (APP_URL, FRONTEND_URL, API_URL)
  • [ ] SSL certificate for production (required for secure cookies)
  • [ ] Mail SMTP credentials ready (for password reset)

Next: Installation overview

Need help? support@xorinlab.com · Website: xorinlab.com