-
-
Notifications
You must be signed in to change notification settings - Fork 211
/
.env.example
221 lines (176 loc) · 9.06 KB
/
.env.example
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
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
# || 🔥 [Important note]: Please note that currently, v1.3.0-canary.7 requires specifying Clerk, as its API has changed.
# || We are working on making Clerk optional again. However, all other environment variables are optional.
# || If this statement is incorrect, meaning something is broken somewhere, please let us know.
# || https://github.com/blefnk/relivator-nextjs-template
# ====================================================
# GENERAL
# ====================================================
# || You can try our brand-new linting script: `pnpm lint:env` or `pnpm appts:env`.
# || These commands will check the correctness of your .env and .env.example files.
# Specify the website domain in production
NEXT_PUBLIC_APP_URL="http://localhost:3000"
# ====================================================
# DATABASE
# ====================================================
# || When the following connection string is set, you can run "pnpm db:push" to create/update the database tables.
# || If you've just created the database, please give your provider a moment for the database to be fully created.
# Type here any word, e.g. your project name, you want to prepend to your database table names
NEXT_PUBLIC_DATABASE_PREFIX="relivator"
# Database (https://neon.tech) (it's recommended to check 'Pooled connection' to get the production URL)
DATABASE_URL=""
# || DATABASE URL EXAMPLES (pg: try 'postgres://' if 'postgresql://' does not work)
# || ---------------------------------------------------------------
# || - Postgres ➞ Neon (recommended for most users) ➞ postgresql://database_owner:password@hostname/database?sslmode=require
# || - Postgres ➞ Private (not tested yet with latest Relivator version) ➞ postgresql://username:[email protected]:5432/db
# || - Postgres ➞ Railway (not tested yet with latest Relivator version) ➞ postgresql://root:password@hostname:36906/railway
# || ---------------------------------------------------------------
# || We are using Drizzle and Neon as default database provider
# || https://orm.drizzle.team/learn/tutorials/drizzle-with-neon
# || NOTE: NEXT_PUBLIC_DB_PROVIDER was removed in Relivator 1.2.6
# || To switch the provider from Neon, modify drizzle.config.ts
# || To use MySQL or LibSQL providers, update files inside src/db.
# || Automatic switcher coming in Relivator 1.3.x version.
# ====================================================
# AUTHENTICATION
# ====================================================
# || Fake session data will be assigned to your users
# || if DATABASE_URL or Clerk api keys are not set.
# Required for both "authjs" and "clerk" authProviders.
# https://authjs.dev/guides/environment-variables
# Recommended (bash): openssl rand -base64 33
# Or try this: pnpm dlx randomstring length=44
AUTH_SECRET="EnsureUseSomethingRandomHere44CharactersLong"
# Required if you choose "authjs" as your authentication provider.
# Discord: https://discord.com/developers/applications
AUTH_DISCORD_SECRET=""
AUTH_DISCORD_ID=""
# GitHub: https://github.com/settings/developers
AUTH_GITHUB_SECRET=""
AUTH_GITHUB_ID=""
# Google: https://console.cloud.google.com/apis/credentials
AUTH_GOOGLE_SECRET=""
AUTH_GOOGLE_ID=""
# Required if you choose "clerk" as your authentication provider.
# Obtain keys from: https://dashboard.clerk.com/last-active?path=api-keys
# Ensure the domain is connected in production (for PageSpeed Insights).
NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY=""
CLERK_SECRET_KEY=""
NEXT_PUBLIC_CLERK_SIGN_IN_URL="/signin"
NEXT_PUBLIC_CLERK_SIGN_UP_URL="/signup"
# Additional optional feature, to enable visit:
# Clerk Dashboard > [app] > Organizations Settings
NEXT_PUBLIC_ORGANIZATIONS_ENABLED="false"
# || NOTE: NEXT_PUBLIC_AUTH_PROVIDER was removed in Relivator 1.2.6.
# || To switch the provider from Neon, modify `reliverse.config.ts`.
# || Automatic switcher coming in the release of Relivator v1.3.0 GA.
# || Auth.js Guide: https://nextjs.org/learn/dashboard-app/adding-authentication
# || Clerk Guide: https://clerk.com/docs/quickstarts/nextjs
# ====================================================
# PAYMENT SYSTEM
# ====================================================
# || Fake store data will be generated if DATABASE_URL
# || and STRIPE_WEBHOOK_SIGNING_SECRET are not set.
# For API keys: https://dashboard.stripe.com/test/apikeys
NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY=""
STRIPE_SECRET_KEY=""
STRIPE_API_KEY=""
# Please read the instructions at the end of the file.
STRIPE_WEBHOOK_SIGNING_SECRET=""
STRIPE_WEBHOOK_SECRET=""
# For product setup: https://dashboard.stripe.com/test/products
STRIPE_PROFESSIONAL_SUBSCRIPTION_PRICE_ID=""
STRIPE_ENTERPRISE_SUBSCRIPTION_PRICE_ID=""
# Stripe Product and Price IDs for your created products
# found at https://dashboard.stripe.com/test/products
STRIPE_STD_MONTHLY_PRICE_ID=""
STRIPE_PRO_MONTHLY_PRICE_ID=""
# ====================================================
# RELIVERSE ADDONS
# ====================================================
# || Currently, "next dev --turbo" does not read the .env file after launch.
# || So, you need to close the application using Cmd/Ctrl+C and run it again.
# Set to true if you want to enable addons/scripts/reliverse/relimter/python/index.ts
# Note: addons/scripts/reliverse/relimter/python/index.ts is a more stable version.
PYTHON_INSTALLED="false"
# Set to true if you want to enable addons/scripts/reliverse/toolbar/index.ts toolbar
# https://vercel.com/docs/workflow-collaboration/vercel-toolbar
ENABLE_VERCEL_TOOLBAR="false"
ENABLE_VT_ON_PRODUCTION="false"
# ENABLE_VERCEL_TOOLBAR must be enabled to enable the following
# https://vercel.com/docs/workflow-collaboration/feature-flags
ENABLE_FEATURE_FLAGS="false"
# node -e "console.log(crypto.randomBytes(32).toString('base64url'))"
FLAGS_SECRET=""
# Remotion GitHub Personal Access Token
# Obtain from: https://github.com/settings/personal-access-tokens/new
REMOTION_GITHUB_TOKEN=""
# ====================================================
# MEDIA UPLOAD
# ====================================================
# || Uploadthing is free, but redirects you to Stripe
# || after signing up, so you can just close the tab.
# Image Upload Configuration
# https://uploadthing.com (Dashboard > [App] > API Keys)
UPLOADTHING_SECRET=""
UPLOADTHING_APP_ID=""
# ====================================================
# EMAIL SYSTEM
# ====================================================
# || The email system is already partially integrated into Relivator 1.2.6. It will
# || be fully functional starting from Relivator 1.3.0. Contributions are welcome!
# Email System Configuration
# Get API keys: https://resend.com
NEXT_PUBLIC_RESEND_API_KEY=""
# Set email: https://resend.com/domains or use Resend's test email
NEXT_PUBLIC_RESEND_EMAIL_FROM="[email protected]"
# We need to register a domain with Resend to send emails from
# Register a domain at https://resend.com/domains
# Or we can use this email provided by resend for only testing: "[email protected]"
EMAIL_FROM_ADDRESS="[email protected]"
# https://novu.co
NOVU_SECRET_KEY=""
# https://your-live-domain.com/api/novu
NOVU_BRIDGE_URL=""
# ====================================================
# ADDITIONAL
# ====================================================
# || Never share or commit the .env file. It has been added to .gitignore.
# || When adding new variables, update the schema in the /src/env.js file.
# upstash
# https://YOUR_UPSTASH_REDIS_REST_URL
UPSTASH_REDIS_REST_URL=""
# •••••••••••••
UPSTASH_REDIS_REST_TOKEN=""
# Loglib Analytics (https://loglib.io)
LOGLIB_ID=""
# Discord Server Notifications Integration
# Open your server settings > Integrations > New Webhook > obtain the URL.
DISCORD_WEBHOOK_URL=""
# Do not enable it, it's used exclusively by https://relivator.com
DEMO_NOTES_ENABLED="false"
# ====================================================
# STRIPE INSTRUCTIONS
# ====================================================
# Ensure that you have the required configuration
# set up before following the instructions below:
# - DATABASE_URL
# - STRIPE_SECRET_KEY
# - NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY
# [STRIPE WEBHOOK FOR DEVELOPMENT]
# 1. Install Stripe CLI: https://stripe.com/docs/stripe-cli#install
# 2. Create webhook: https://dashboard.stripe.com/test/webhooks/create?endpoint_location=local
# 3. Open 3 terminals:
# - Terminal 1: "pnpm dev"
# - Terminal 2: "stripe login"
# - Terminal 3: "pnpm dev:stripe" or "pnpm stripe:listen"
# 4. Copy the signing secret from the terminal and paste it into STRIPE_WEBHOOK_SIGNING_SECRET.
# 5. Run "stripe trigger payment_intent.succeeded", wait for it to complete, then click Done.
# Keep "pnpm dev:stripe" or "pnpm stripe:listen" enabled when testing Stripe on localhost.
# Test data: 4242424242424242 | 12/34 | 567
# [STRIPE WEBHOOK FOR PRODUCTION]
# 1. Create webhook: https://dashboard.stripe.com/test/webhooks/create?endpoint_location=hosted
# 2. Endpoint: https://use-the-domain-here.com/api/webhooks/stripe
# 3. Select all events and add the endpoint.
# 4. Ensure "Latest API version" is selected.
# 5. Reveal the signing secret.
# Note: You will get the test-mode production signing key. Switch to live-mode for the real key.