Skip to content

Commit

Permalink
v1.2.6-release-the-resurrection-update
Browse files Browse the repository at this point in the history
  • Loading branch information
blefnk committed Aug 4, 2024
1 parent 0fb8211 commit 6080018
Show file tree
Hide file tree
Showing 1,478 changed files with 121,397 additions and 74,836 deletions.
309 changes: 176 additions & 133 deletions .env.example
Original file line number Diff line number Diff line change
@@ -1,156 +1,199 @@
#===========================================
# 🔴 REQUIRED
#===========================================
# || 🔥 [Important note]: Please note that currently, v1.2.6 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

# planetscale (https://planetscale.com) | neon (https://neon.tech)
# vercel (https://vercel.com) | railway (https://railway.app)
NEXT_PUBLIC_DB_PROVIDER="planetscale"
# ====================================================
# GENERAL
# ====================================================

# mysql://username:password@hostname/database
# postgres://username:password@hostname/database
DATABASE_URL="mysql://YOUR_MYSQL_URL_HERE"
# || 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.

#===========================================
# 🟢 OPTIONAL (EASY)
#===========================================

# clerk (https://clerk.com) | authjs (https://authjs.dev)
NEXT_PUBLIC_AUTH_PROVIDER="authjs"
# Specify the website domain in production
NEXT_PUBLIC_APP_URL="http://localhost:3000"

# Required if you have chosen "clerk" as auth provider
# https://dashboard.clerk.com/last-active?path=api-keys
# ====================================================
# 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.

# Database (https://neon.tech) (it's recommended to check 'Pooled connection' to get the production URL)
DATABASE_URL=""

# || DATABASE URL EXAMPLES (pg: try 'postgresql://' if 'postgres://' does not work)
# || ---------------------------------------------------------------
# || - Postgres ➞ Neon ➞ postgresql://database_owner:password@hostname/database?sslmode=require
# || - Postgres ➞ Planetscale ➞ mysql://username:password@hostname/database?ssl={"rejectUnauthorized":true}
# || - Postgres ➞ Private ➞ postgres://username:[email protected]:5432/db
# || - Postgres ➞ Railway ➞ postgres://root:password@hostname:36906/railway
# || - MySQL ➞ Railway ➞ mysql://root:password@hostname:36906/railway
# || - MySQL ➞ Private ➞ mysql://username:password@hostname/database
# || - SQLite ➞ SQLite ➞ db.sqlite
# || ---------------------------------------------------------------

# || 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
# ====================================================

# || Please visit `reliverse.config.ts` and set the `authProvider`
# || to either "clerk" or "authjs". Fake session data will be assigned
# || to your users if DATABASE_URL or authProvider 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_AFTER_SIGN_IN_URL="/dashboard"
# NEXT_PUBLIC_CLERK_AFTER_SIGN_UP_URL="/dashboard"
NEXT_PUBLIC_CLERK_SIGN_IN_URL="/sign-in"
NEXT_PUBLIC_CLERK_SIGN_UP_URL="/sign-up"
# 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 Relivator 1.3.x version.

# ====================================================
# 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=""

# Specify your website domain in production
NEXT_PUBLIC_APP_URL="http://localhost:3000"

#===========================================
# 🟡 OPTIONAL (MEDIUM)
#===========================================
# Please read the instructions at the end of the file.
STRIPE_WEBHOOK_SIGNING_SECRET=""

# https://dashboard.stripe.com/test/products
# For product setup: https://dashboard.stripe.com/test/products
STRIPE_PROFESSIONAL_SUBSCRIPTION_PRICE_ID=""
STRIPE_ENTERPRISE_SUBSCRIPTION_PRICE_ID=""

# https://dashboard.stripe.com/test/apikeys
NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY=""
STRIPE_SECRET_KEY=""
# ====================================================
# RELIVERSE ADDONS
# ====================================================

# Read the instructions at the end of file
STRIPE_WEBHOOK_SIGNING_SECRET=""
# || 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/reliverse/relimter/python/index.ts
# Note: addons/reliverse/relimter/python/index.ts is a more stable version.
PYTHON_INSTALLED="false"

# Set to true if you want to enable addons/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=""

# Specify if you want image uploads
# https://uploadthing.com/dashboard
# ====================================================
# 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=""

# Specify if you want email system
# ====================================================
# 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
RESEND_API_KEY=""
# Set email: https://resend.com/domains
# Or use Resend's special testing email
EMAIL_FROM_ADDRESS="[email protected]"

#===========================================
# 🟠 OPTIONAL (ADVANCED)
#===========================================

# Specify if you have "authjs" as auth provider
# https://discord.com/developers/applications
DISCORD_CLIENT_SECRET=""
DISCORD_CLIENT_ID=""
# https://github.com/settings/developers
GITHUB_CLIENT_SECRET=""
GITHUB_CLIENT_ID=""
# https://console.cloud.google.com/apis/credentials
GOOGLE_CLIENT_SECRET=""
GOOGLE_CLIENT_ID=""
# https://generate-secret.vercel.app/32
NEXTAUTH_SECRET="UseSomethingRandomHere32CharLong"
NEXTAUTH_URL="http://localhost:3000"

# Specify if you want to have
# https://loglib.io analytics
LOGLIB_SITE_ID=""

#===========================================
# 🔵 OPTIONAL (ADDITIONAL)
#===========================================

# Specify if you want to enable ip rate limit
# Upstash Redis (https://console.upstash.com)
UPSTASH_REDIS_REST_URL=""
UPSTASH_REDIS_REST_TOKEN=""

# If you want multiplayer https://liveblocks.io
NEXT_PUBLIC_LIVEBLOCKS_PUBLIC_KEY=""

# Set "true" to enable checks for any bot activity
CHECK_BOT_ACTIVITY="false"

# Set "true" to enable "src/core/cors/csp.mjs" file
NEXT_PUBLIC_CSP_XSS="false"

# Set "false" to ask search engines not to index site
# Ypu need to have NEXT_PUBLIC_CSP_XSS="true" as well
NEXT_PUBLIC_IS_LIVE="true"

# next-intl | next-international (soon) | none (soon)
NEXT_PUBLIC_INTL_PROVIDER="next-intl"

# Set "true" to hide environment info when missing
NEXT_PUBLIC_HIDE_ENV_INFO="false"

# It's recommended to specify your live domain
# here on the development (with https:// part)
# Use comma without spaces to specify multiple
# Ypu need to have NEXT_PUBLIC_CSP_XSS="true"
ADDITIONAL_CSP_ORIGINS="https://*.vercel.app,https://relivator.bleverse.com"

#===========================================
# 🟣 INSTRUCTIONS
#===========================================
NEXT_PUBLIC_RESEND_API_KEY=""

# [STRIPE WEBHOOK FOR DEVELOPMENT]
# 1. Install Stripe CLI: https://stripe.com/docs/stripe-cli#install
# 2. https://dashboard.stripe.com/test/webhooks/create?endpoint_location=local
# 3. Open 3 terminals: (1) "pnpm dev"; (2) "stripe login"; (3) "pnpm stripe:listen".
# 4. Copy signing secret from your terminal, paste to STRIPE_WEBHOOK_SIGNING_SECRET.
# 5. Run "stripe trigger payment_intent.succeeded", wait for Completed, click Done.
# Keep "pnpm stripe:listen" enabled when you need to test Stripe on the localhost.
# When testing the Stripe -> use these test data: 4242424242424242 | 12/34 | 567
# Set email: https://resend.com/domains or use Resend's test email
NEXT_PUBLIC_RESEND_EMAIL_FROM="[email protected]"

# [STRIPE WEBHOOK FOR PRODUCTION]
# 1. https://dashboard.stripe.com/test/webhooks/create?endpoint_location=hosted
# 2. As endpoint use: https://use-your-domain-here.com/api/webhooks/stripe
# 3. "Select events" > "Select all events" > "Add events".
# 4. "Events on your account"; Version "Latest API version".
# 5. Scroll the page down to the end and click "Add endpoint".
# 6. Open newly created webhook and reveal your signing secret.
# Please note: you will get the test-mode production signing key,
# switch to the live-mode to get real one, steps possibly the same.

# [IMPORTANT THINGS TO KNOW]
# Never share or commit the ".env" file anywhere.
# When adding new variables, update the schema
# in the "/src/env.mjs" file accordingly.
# Also, specify any missing variables
# in "/src/indicators-error.tsx".

#===========================================
# ⭕ CURRENTLY NOT USED
#===========================================

# For Discord Server Integration: Go to Edit Channel
# > Integrations > New Webhook, and obtain your 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.

# Loglib Analytics (https://loglib.io)
LOGLIB_ID=""

# Discord Server Notifications Integration
# Open your server settings > Integrations > New Webhook > obtain the URL.
DISCORD_WEBHOOK_URL=""

# stripe | lemonsqueezy (soon) | disable (soon)
NEXT_PUBLIC_PAYMENT_PROVIDER="stripe"
# ====================================================
# STRIPE INSTRUCTIONS
# ====================================================

# drizzle | prisma (soon)
NEXT_PUBLIC_DB_LIBRARY="drizzle"
# Ensure that you have the required configuration
# set up before following the instructions below:
# - DATABASE_URL
# - STRIPE_SECRET_KEY
# - NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY

# none | contentlayer (soon)
NEXT_PUBLIC_CMS_PROVIDER="none"
# [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 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 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.
Loading

0 comments on commit 6080018

Please sign in to comment.