124 lines
5.9 KiB
Bash
124 lines
5.9 KiB
Bash
# ═══════════════════════════════════════════════════════════════
|
|
# RentalDriveGo — Environment Variables
|
|
# Copy to .env.local and fill in your values.
|
|
# ═══════════════════════════════════════════════════════════════
|
|
|
|
# ─── Database ──────────────────────────────────────────────────
|
|
DATABASE_URL=postgresql://dbadmin:PMPS5k0D7rUeJOk0NkhI5bRtoGjkUqjK@localhost:5432/rentaldrivego
|
|
DATABASE_URL_FROM_POSTGRES=true
|
|
POSTGRES_HOST=postgres
|
|
POSTGRES_PORT=5432
|
|
POSTGRES_DB=rentaldrivego
|
|
POSTGRES_USER=dbadmin
|
|
POSTGRES_PASSWORD=PMPS5k0D7rUeJOk0NkhI5bRtoGjkUqjK
|
|
|
|
# ─── 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=8bf96de20297c2c295a60e4040e937a7eb8ec7d7d2b83e79a1fc98463322a97c
|
|
JWT_EXPIRY=8h
|
|
RENTER_JWT_EXPIRY=7d
|
|
# Optional in local development. Required in production when auth spans sibling subdomains.
|
|
# Example: SESSION_COOKIE_DOMAIN=.rentaldrivego.ma
|
|
SESSION_COOKIE_DOMAIN=
|
|
|
|
# ─── Clerk (Company employee auth) ────────────────────────────
|
|
NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY=pk_test_...
|
|
CLERK_SECRET_KEY=placeholder
|
|
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) ───────────────────────
|
|
# RentalDriveGo's own AmanPay account (for collecting subscription fees)
|
|
AMANPAY_MERCHANT_ID=your-amanpay-merchant-id
|
|
AMANPAY_SECRET_KEY=placeholder
|
|
AMANPAY_BASE_URL=https://api.amanpay.net
|
|
AMANPAY_WEBHOOK_SECRET=placeholder
|
|
|
|
# ─── PayPal (Secondary payment provider) ──────────────────────
|
|
# RentalDriveGo's own PayPal account (for collecting subscription fees)
|
|
PAYPAL_CLIENT_ID=your-paypal-client-id
|
|
PAYPAL_CLIENT_SECRET=placeholder
|
|
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=placeholder
|
|
NEXT_PUBLIC_CLOUDINARY_CLOUD_NAME=your-cloud-name
|
|
|
|
# ─── Resend (Email) ────────────────────────────────────────────
|
|
RESEND_API_KEY=placeholder
|
|
EMAIL_FROM=rentaldrivego@gmail.com
|
|
EMAIL_FROM_NAME=RentalDriveGo
|
|
|
|
# ─── Twilio (SMS + WhatsApp) ───────────────────────────────────
|
|
TWILIO_ACCOUNT_SID=AC...
|
|
TWILIO_AUTH_TOKEN=placeholder
|
|
TWILIO_PHONE_NUMBER=+1234567890
|
|
TWILIO_WHATSAPP_NUMBER=whatsapp:+14155238886
|
|
|
|
# ─── Firebase (Push notifications) ───────────────────────────
|
|
FIREBASE_PROJECT_ID=your-project-id
|
|
FIREBASE_PRIVATE_KEY=placeholder
|
|
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
|
|
|
|
# The Node API uses Resend for email delivery.
|
|
# MAIL_* SMTP variables are intentionally omitted here.
|
|
|
|
# ─── Redis (Real-time / Socket.io) ────────────────────────────
|
|
REDIS_PASSWORD=replace-with-production-redis-password
|
|
REDIS_URL=redis://localhost:6379
|
|
|
|
# ─── App URLs ──────────────────────────────────────────────────
|
|
# SITE_ORIGIN is the canonical public origin for robots.txt, sitemap, and metadata.
|
|
# Required for production builds. Must be an absolute https:// URL with no trailing slash.
|
|
# SITE_ORIGIN=https://your-production-domain.example
|
|
|
|
|
|
NEXT_PUBLIC_DASHBOARD_URL=http://localhost:3000/dashboard
|
|
NEXT_PUBLIC_ADMIN_URL=http://localhost:3000/admin
|
|
NEXT_PUBLIC_CARPLACE_URL=http://localhost:3000/carplace
|
|
NEXT_PUBLIC_HOMEPAGE_URL=http://localhost:3000
|
|
# Public site is subdomain-based; use this for local dev:
|
|
NEXT_PUBLIC_PUBLIC_SITE_DOMAIN=localhost:3003
|
|
API_DOMAIN=api.rentaldrivego.ma
|
|
PUBLIC_SITE_DOMAIN=rentaldrivego.ma
|
|
DASHBOARD_URL=http://localhost:3000/dashboard
|
|
|
|
# ─── Admin seed (first SUPER_ADMIN created on db:seed) ────────
|
|
ADMIN_SEED_EMAIL=admin@rentaldrivego.ma
|
|
ADMIN_SEED_PASSWORD=PMPS5k0D7rUeJOk0NkhI5bRtoGjkUqjK
|
|
ADMIN_SEED_FIRST_NAME=Super
|
|
ADMIN_SEED_LAST_NAME=Admin
|
|
|
|
# SMTP fallback (only used if Resend fails or is unconfigured)
|
|
MAIL_HOST=smtp.gmail.com
|
|
MAIL_PORT=587
|
|
MAIL_SCHEME=smtp
|
|
MAIL_USERNAME=rentaldrivego@gmail.com
|
|
MAIL_PASSWORD=kfahihfzbcvkczew
|
|
MAIL_FROM_ADDRESS=rentaldrivego@gmail.com
|
|
MAIL_FROM_NAME=RentalDriveGo
|
|
MAIL_REPLY_TO_ADDRESS=rentaldrivego@gmail.com
|
|
MAIL_REPLY_TO_NAME=RentalDriveGo
|
|
|
|
|
|
IMAGE_TAG=13d0512048d86e9fe93e9395459d04663c2b7eb0
|
|
|
|
# ─── Misc ──────────────────────────────────────────────────────
|
|
NODE_ENV=production
|