-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy path.env.example
More file actions
102 lines (83 loc) · 4.94 KB
/
Copy path.env.example
File metadata and controls
102 lines (83 loc) · 4.94 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
# ─────────────────────────────────────────────
# RIPPLE NEXUS — ENVIRONMENT VARIABLES
# Copy this to .env.local for local dev
# Set all production values in Vercel → Settings → Environment Variables
# ─────────────────────────────────────────────
# App
NEXT_PUBLIC_APP_URL=http://localhost:3000
# Database (PostgreSQL - Neon)
# DATABASE_URL should be the connection string WITH pooling enabled (e.g., ends in ?pgbouncer=true or uses pooling port)
DATABASE_URL=postgresql://postgres:password@localhost:5432/ripple_nexus?pgbouncer=true
# DIRECT_URL should be the connection string WITHOUT pooling (used for Prisma migrations)
DIRECT_URL=postgresql://postgres:password@localhost:5432/ripple_nexus
# ─── Razorpay (Indian clients — INR only) ────
# Get from: https://dashboard.razorpay.com → Settings → API Keys
RAZORPAY_KEY_ID=rzp_live_xxxxxxxxxxxxxxxxxxxx
RAZORPAY_KEY_SECRET=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
# Get from: Razorpay Dashboard → Settings → Webhooks → Secret
# Webhook URL: https://catalyst.theripplenexus.com/api/razorpay/webhook
RAZORPAY_WEBHOOK_SECRET=your_webhook_secret_from_razorpay_dashboard
# ─── PayPal (International clients — non-INR) ─
# PAYPAL_ENV controls which PayPal environment to use:
# "sandbox" → test mode (use sandbox credentials below)
# "production" → live mode (use live credentials below)
PAYPAL_ENV=sandbox
# Get from: https://developer.paypal.com → Apps & Credentials → Create App
# Use "Sandbox" app credentials for dev, "Live" app for production
PAYPAL_CLIENT_ID=AxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxX
PAYPAL_CLIENT_SECRET=Exxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
# Get from: PayPal Developer → Webhooks → Add Webhook → copy Webhook ID
# Webhook URL: https://catalyst.theripplenexus.com/api/paypal/webhook
# Subscribe to events:
# - INVOICES.PAYMENT.COMPLETED
# - INVOICES.CANCELLED
PAYPAL_WEBHOOK_ID=xxxxxxxxxxxxxxxxxx
# ─── Email (Resend) ───────────────────────────
# Get from: https://resend.com → API Keys
RESEND_API_KEY=re_xxxxxxxxxxxxxxxxxxxxxxxxxxxx
FROM_EMAIL=catalyst@theripplenexus.com
# ─── Exchange Rate API ────────────────────────
# Free tier: https://www.exchangerate-api.com (1500 req/month)
# Leave blank to use open.er-api.com (no key needed, lower rate limit)
EXCHANGE_RATE_API_KEY=
# ─── Admin Auth (required for production) ─────
# Set a strong password for the /login screen.
ADMIN_PASSWORD=change_this_to_a_strong_password
# Used to sign admin session cookies (keep different from password).
ADMIN_SESSION_SECRET=change_this_to_a_long_random_secret
# Backward-compat (older setups): if you only set this, it will be used for both.
ADMIN_SECRET=
# ─── Career Booster Module ────────────────────
# Separate HMAC secret for client portal sessions
CAREER_PORTAL_SECRET=change_this_to_a_64char_random_hex_string
# Optional: separate Razorpay webhook secret for career payments
# Falls back to RAZORPAY_WEBHOOK_SECRET if not set
RAZORPAY_CAREER_WEBHOOK_SECRET=
# Cloudinary (file upload/storage for deliverables)
# Free at https://cloudinary.com → Dashboard → Account Details
CLOUDINARY_CLOUD_NAME=your_cloud_name
CLOUDINARY_API_KEY=your_api_key
CLOUDINARY_API_SECRET=your_api_secret
# ─── Ripple Nexus Module ─────────────────────────────────────────
# Enables the RN agency client track in the admin dashboard.
# Set to 'false' (or leave unset) while Catalyst is the only active track.
# Set to 'true' only when you are ready to onboard Ripple Nexus agency clients.
ENABLE_RN_MODULE=false
NEXT_PUBLIC_ENABLE_RN_MODULE=false
# Separate portal secret for Ripple Nexus client sessions
# Generate with: openssl rand -hex 32
RN_PORTAL_SECRET=change_this_to_a_64char_random_hex_string
# Sender address for Ripple Nexus branded emails (invoices, welcome, portal)
RN_FROM_EMAIL=hello@theripplenexus.com
# Admin notification address for RN client activity
RN_ADMIN_NOTIFY_EMAIL=hello@theripplenexus.com
# Ripple Nexus client portal base URL
# For local dev this is handled automatically (http://localhost:3000)
RN_PORTAL_URL=https://clientforge.theripplenexus.com
# Catalyst portal base URL (override if different from NEXT_PUBLIC_APP_URL)
CATALYST_PORTAL_URL=https://catalyst.theripplenexus.com
# ─── Sales Funnel Feature Flags (gradual rollout) ───
# Phase 1: Enable apply self-service checkout (new CheckoutSession + sendInvoiceEmail)
FEATURE_NEW_APPLY_FLOW=false
# Phase 2: Enable inquire sales funnel (SalesInquiry + Proposal workflow)
FEATURE_NEW_INQUIRE_FLOW=false