Voralis Documentation

Voralis Web — cPanel / Shared Hosting

Deploy voralis-web on WHM/cPanel using Setup Node.js App, SSH builds, Prisma migrations, and AutoSSL.

Requirements

  • cPanel with Node.js Selector (Node 20+ or 22.x)
  • SSH access (strongly recommended for npm run build)
  • Domain or subdomain pointed to the account
  • External PostgreSQL (Neon, Supabase) — most shared hosts do not include Postgres
  • FFmpeg may require host support or a VPS for video features

Step 1 — Create the Node.js application

  1. Log in to cPanel → Setup Node.js App → Create Application.
  2. Settings:
    • Node.js version: 20.x or 22.x
    • Application mode: Production
    • Application root: voralis-web
    • Application URL: your domain or subdomain
    • Application startup file: .next/standalone/server.js
  3. Click Create.

Step 2 — Upload code

cd ~/voralis-web git clone <your-repo-url> . # or upload and extract ZIP via File Manager

Step 3 — Environment variables

In cPanel Node.js App → Environment Variables, add keys from deploy/env.example:

  • NEON_DATABASE_URL / DATABASE_URL
  • NEXT_PUBLIC_APP_URL, NEXTAUTH_SECRET, JWT_SECRET
  • NEXT_PUBLIC_BRAIN_SERVER_URL
  • GEMINI_API_KEY and other AI keys you enable

Or via SSH:

cp deploy/env.example .env.production ln -sf .env.production .env.local nano .env.production

Step 4 — Build via SSH

Activate the cPanel Node virtualenv (path varies by host):

source /home/USER/nodevenv/voralis-web/20/bin/activate cd ~/voralis-web npm ci npx prisma generate export NODE_OPTIONS='--max-old-space-size=4096' npm run build cp -r public .next/standalone/public cp -r .next/static .next/standalone/.next/static cp -r lib/generated .next/standalone/lib/generated 2>/dev/null || true npm run prisma:migrate:deploy

Step 5 — Start / restart

In cPanel Node.js App panel, click Restart.

If PM2 is allowed on your host:

npm install -g pm2 pm2 start ecosystem.config.cjs pm2 save

Step 6 — Domain & SSL

  • Use cPanel SSL/TLS or AutoSSL for HTTPS.
  • cPanel usually proxies the Node app when configured in Setup Node.js App.
  • For manual Apache proxy, contact your host or add reverse proxy rules (host-specific).

Step 7 — Verify

Visit https://yourdomain.com/api/health — should return OK.

Complete the License Setup Wizard on first visit if not already done.

cPanel notes

  • Memory: if build fails, use export NODE_OPTIONS='--max-old-space-size=4096'
  • FFmpeg: ask host to install, or deploy on a VPS for video features
  • Build timeout: run npm run build over SSH, not in browser terminal
  • Standalone output: startup file must be .next/standalone/server.js