90 lines
4.8 KiB
Bash
90 lines
4.8 KiB
Bash
# ═══════════════════════════════════════════════════════════════
|
|
# RentalDriveGo — Environment Variables
|
|
# Copy to .env.local and fill in your values.
|
|
# ═══════════════════════════════════════════════════════════════
|
|
|
|
# ─── Database ──────────────────────────────────────────────────
|
|
DATABASE_URL="postgresql://postgres:password@localhost:5432/rentaldrivego"
|
|
|
|
# ─── API ───────────────────────────────────────────────────────
|
|
API_PORT=4000
|
|
API_URL=http://localhost:4000
|
|
NEXT_PUBLIC_API_URL=http://localhost:4000/api/v1
|
|
|
|
# ─── JWT (Renter auth + Admin auth) ───────────────────────────
|
|
JWT_SECRET=your-super-secret-jwt-key-change-in-production
|
|
JWT_EXPIRY=8h
|
|
RENTER_JWT_EXPIRY=7d
|
|
|
|
# ─── Clerk (Company employee auth) ────────────────────────────
|
|
NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY=pk_test_...
|
|
CLERK_SECRET_KEY=sk_test_...
|
|
CLERK_WEBHOOK_SECRET=whsec_...
|
|
NEXT_PUBLIC_CLERK_SIGN_IN_URL=/sign-in
|
|
NEXT_PUBLIC_CLERK_SIGN_UP_URL=/sign-up
|
|
NEXT_PUBLIC_CLERK_AFTER_SIGN_IN_URL=/dashboard
|
|
NEXT_PUBLIC_CLERK_AFTER_SIGN_UP_URL=/onboarding
|
|
|
|
# ─── AmanPay (Primary payment provider) ───────────────────────
|
|
# RentFlow's own AmanPay account (for collecting subscription fees)
|
|
AMANPAY_MERCHANT_ID=your-amanpay-merchant-id
|
|
AMANPAY_SECRET_KEY=your-amanpay-secret-key
|
|
AMANPAY_BASE_URL=https://api.amanpay.net
|
|
AMANPAY_WEBHOOK_SECRET=your-amanpay-webhook-secret
|
|
|
|
# ─── PayPal (Secondary payment provider) ──────────────────────
|
|
# RentFlow's own PayPal account (for collecting subscription fees)
|
|
PAYPAL_CLIENT_ID=your-paypal-client-id
|
|
PAYPAL_CLIENT_SECRET=your-paypal-client-secret
|
|
PAYPAL_BASE_URL=https://api-m.paypal.com
|
|
# Use https://api-m.sandbox.paypal.com for sandbox
|
|
NEXT_PUBLIC_PAYPAL_CLIENT_ID=your-paypal-client-id
|
|
|
|
# ─── Cloudinary (Vehicle + brand photos) ──────────────────────
|
|
CLOUDINARY_CLOUD_NAME=your-cloud-name
|
|
CLOUDINARY_API_KEY=your-api-key
|
|
CLOUDINARY_API_SECRET=your-api-secret
|
|
NEXT_PUBLIC_CLOUDINARY_CLOUD_NAME=your-cloud-name
|
|
|
|
# ─── Resend (Email) ────────────────────────────────────────────
|
|
RESEND_API_KEY=re_...
|
|
EMAIL_FROM=noreply@rentaldrivego.com
|
|
EMAIL_FROM_NAME=RentalDriveGo
|
|
|
|
# ─── Twilio (SMS + WhatsApp) ───────────────────────────────────
|
|
TWILIO_ACCOUNT_SID=AC...
|
|
TWILIO_AUTH_TOKEN=your-twilio-auth-token
|
|
TWILIO_PHONE_NUMBER=+1234567890
|
|
TWILIO_WHATSAPP_NUMBER=whatsapp:+14155238886
|
|
|
|
# ─── Firebase (Push notifications) ───────────────────────────
|
|
FIREBASE_PROJECT_ID=your-project-id
|
|
FIREBASE_PRIVATE_KEY="-----BEGIN PRIVATE KEY-----\n...\n-----END PRIVATE KEY-----\n"
|
|
FIREBASE_CLIENT_EMAIL=firebase-adminsdk@your-project.iam.gserviceaccount.com
|
|
NEXT_PUBLIC_FIREBASE_API_KEY=your-firebase-api-key
|
|
NEXT_PUBLIC_FIREBASE_AUTH_DOMAIN=your-project.firebaseapp.com
|
|
NEXT_PUBLIC_FIREBASE_PROJECT_ID=your-project-id
|
|
NEXT_PUBLIC_FIREBASE_MESSAGING_SENDER_ID=123456789
|
|
NEXT_PUBLIC_FIREBASE_APP_ID=1:123456789:web:abc123
|
|
|
|
# ─── Redis (Real-time / Socket.io) ────────────────────────────
|
|
REDIS_URL=redis://localhost:6379
|
|
|
|
# ─── App URLs ──────────────────────────────────────────────────
|
|
NEXT_PUBLIC_MARKETING_URL=http://localhost:3000
|
|
NEXT_PUBLIC_DASHBOARD_URL=http://localhost:3001
|
|
NEXT_PUBLIC_ADMIN_URL=http://localhost:3002
|
|
NEXT_PUBLIC_MARKETPLACE_URL=http://localhost:3000/explore
|
|
# Public site is subdomain-based; use this for local dev:
|
|
NEXT_PUBLIC_PUBLIC_SITE_DOMAIN=localhost:3003
|
|
DASHBOARD_URL=http://localhost:3001
|
|
|
|
# ─── Admin seed (first SUPER_ADMIN created on db:seed) ────────
|
|
ADMIN_SEED_EMAIL=admin@rentaldrivego.com
|
|
ADMIN_SEED_PASSWORD=changeme123
|
|
ADMIN_SEED_FIRST_NAME=Super
|
|
ADMIN_SEED_LAST_NAME=Admin
|
|
|
|
# ─── Misc ──────────────────────────────────────────────────────
|
|
NODE_ENV=development
|