4.4 KiB
4.4 KiB
Environment Variables Examples
Backend Environment Variables
Create a .env file in blog-editor/backend/ with the following:
# =====================================================
# SERVER CONFIGURATION
# =====================================================
PORT=5000
NODE_ENV=development
# =====================================================
# DATABASE CONFIGURATION (PostgreSQL - Supabase)
# =====================================================
# Option 1: Use Supabase connection string (recommended)
# Format: postgresql://user:password@host:port/database
DATABASE_URL=postgresql://postgres.ekqfmpvebntssdgwtioj:[YOUR-PASSWORD]@aws-1-ap-south-1.pooler.supabase.com:5432/postgres
# Option 2: Use individual parameters (for local development)
# Uncomment and use these if not using DATABASE_URL
# DB_HOST=localhost
# DB_PORT=5432
# DB_NAME=blog_editor
# DB_USER=postgres
# DB_PASSWORD=your_database_password_here
# =====================================================
# AUTH SERVICE INTEGRATION
# =====================================================
# URL of your existing auth service
# The blog editor validates JWT tokens via this service
AUTH_SERVICE_URL=http://localhost:3000
# =====================================================
# AWS S3 CONFIGURATION (for image uploads)
# =====================================================
AWS_REGION=us-east-1
AWS_ACCESS_KEY_ID=your_aws_access_key_here
AWS_SECRET_ACCESS_KEY=your_aws_secret_key_here
S3_BUCKET_NAME=blog-editor-images
# =====================================================
# CORS CONFIGURATION
# =====================================================
# Frontend URL that will make requests to this backend
CORS_ORIGIN=http://localhost:4000
# Production example:
# CORS_ORIGIN=https://your-frontend-domain.com
Frontend Environment Variables
Create a .env file in blog-editor/frontend/ with the following:
# =====================================================
# BLOG EDITOR BACKEND API URL
# =====================================================
# URL of the blog editor backend API
# This is where posts, uploads, etc. are handled
VITE_API_URL=http://localhost:5001
# Production example:
# VITE_API_URL=https://api.yourdomain.com
# =====================================================
# AUTH SERVICE API URL
# =====================================================
# URL of your existing auth service
# This is where authentication (login, OTP, etc.) is handled
VITE_AUTH_API_URL=http://localhost:3000
# Production example:
# VITE_AUTH_API_URL=https://auth.yourdomain.com
Quick Setup
Backend
cd blog-editor/backend
cp env.example .env
# Edit .env with your actual values
Frontend
cd blog-editor/frontend
cp env.example .env
# Edit .env with your actual values
Required Values to Update
Backend .env
DATABASE_URL- Supabase connection string (replace[YOUR-PASSWORD]with actual password)- Format:
postgresql://postgres.ekqfmpvebntssdgwtioj:[YOUR-PASSWORD]@aws-1-ap-south-1.pooler.supabase.com:5432/postgres - Or use individual DB_* parameters for local development
- Format:
AUTH_SERVICE_URL- URL where your auth service is running (default: http://localhost:3000)- Note: Auth service uses its own separate database
AWS_ACCESS_KEY_ID- Your AWS access keyAWS_SECRET_ACCESS_KEY- Your AWS secret keyS3_BUCKET_NAME- Your S3 bucket nameCORS_ORIGIN- Your frontend URL (default: http://localhost:4000)
Frontend .env
VITE_API_URL- Your blog editor backend URL (default: http://localhost:5001)VITE_AUTH_API_URL- Your auth service URL (default: http://localhost:3000)
Notes
- VITE_ prefix: Frontend environment variables must start with
VITE_to be accessible in the code - Database (Supabase):
- Replace
[YOUR-PASSWORD]inDATABASE_URLwith your actual Supabase password - Supabase automatically handles SSL connections
- The connection string uses Supabase's connection pooler
- Make sure the database exists in Supabase (or use default
postgresdatabase)
- Replace
- Auth Service:
- Ensure your auth service is running on the port specified in
AUTH_SERVICE_URL - Important: Auth service uses its own separate database (not Supabase)
- Ensure your auth service is running on the port specified in
- AWS S3:
- Create an S3 bucket
- Configure CORS to allow PUT requests from your frontend
- Create IAM user with
s3:PutObjectands3:GetObjectpermissions