diff --git a/README.md b/README.md index 43e8019..5641571 100644 --- a/README.md +++ b/README.md @@ -284,9 +284,9 @@ qr-master/ | Variable | Description | Required | Default | | ------------------------------------ | ----------------------------- | -------- | ---------------------------------------------------------------------- | -| `DATABASE_URL` | PostgreSQL connection string | Yes | `postgresql://postgres:postgres@localhost:5435/qrmaster?schema=public` | +| `DATABASE_URL` | PostgreSQL connection string | Yes | - | | `NEXTAUTH_URL` | Application URL | Yes | `http://localhost:3050` | -| `NEXTAUTH_SECRET` | Secret for JWT encryption | Yes | Generate with `openssl rand -base64 32` | +| `NEXTAUTH_SECRET` | Secret for JWT encryption | Yes | - (Generate with `openssl rand -base64 32`) | | `IP_SALT` | Salt for IP hashing (privacy) | Yes | Generate with `openssl rand -base64 32` | | `GOOGLE_CLIENT_ID` | Google OAuth client ID | No | - | | `GOOGLE_CLIENT_SECRET` | Google OAuth client secret | No | - | diff --git a/docker-compose.dev.yml b/docker-compose.dev.yml index 3321cc0..1de3e58 100644 --- a/docker-compose.dev.yml +++ b/docker-compose.dev.yml @@ -5,9 +5,9 @@ services: container_name: qrmaster-db-dev restart: unless-stopped environment: - POSTGRES_USER: postgres - POSTGRES_PASSWORD: postgres - POSTGRES_DB: qrmaster + POSTGRES_USER: ${POSTGRES_USER} + POSTGRES_PASSWORD: ${POSTGRES_PASSWORD} + POSTGRES_DB: ${POSTGRES_DB} POSTGRES_INITDB_ARGS: "-E UTF8 --locale=en_US.utf8" ports: - "5435:5432" diff --git a/docker-compose.yml b/docker-compose.yml index 58d5efd..d613811 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -5,9 +5,9 @@ services: container_name: qrmaster-db restart: unless-stopped environment: - POSTGRES_USER: ${POSTGRES_USER:-postgres} - POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-postgres} - POSTGRES_DB: ${POSTGRES_DB:-qrmaster} + POSTGRES_USER: ${POSTGRES_USER} + POSTGRES_PASSWORD: ${POSTGRES_PASSWORD} + POSTGRES_DB: ${POSTGRES_DB} POSTGRES_INITDB_ARGS: "-E UTF8 --locale=en_US.utf8" ports: - "5435:5432" @@ -50,12 +50,12 @@ services: ports: - "3050:3000" environment: - NODE_ENV: production - DATABASE_URL: postgresql://${POSTGRES_USER:-postgres}:${POSTGRES_PASSWORD:-postgres}@db:5432/${POSTGRES_DB:-qrmaster}?schema=public - DIRECT_URL: postgresql://${POSTGRES_USER:-postgres}:${POSTGRES_PASSWORD:-postgres}@db:5432/${POSTGRES_DB:-qrmaster}?schema=public + NODE_ENV: production + DATABASE_URL: postgresql://${POSTGRES_USER}:${POSTGRES_PASSWORD}@db:5432/${POSTGRES_DB}?schema=public + DIRECT_URL: postgresql://${POSTGRES_USER}:${POSTGRES_PASSWORD}@db:5432/${POSTGRES_DB}?schema=public REDIS_URL: redis://redis:6379 - NEXTAUTH_URL: ${NEXTAUTH_URL:-http://localhost:3050} - NEXTAUTH_SECRET: ${NEXTAUTH_SECRET:-your-secret-key-change-in-production} + NEXTAUTH_URL: ${NEXTAUTH_URL} + NEXTAUTH_SECRET: ${NEXTAUTH_SECRET} NEXT_PUBLIC_APP_URL: ${NEXT_PUBLIC_APP_URL:-http://localhost:3050} IP_SALT: ${IP_SALT:-your-salt-change-in-production} ENABLE_DEMO: ${ENABLE_DEMO:-false} diff --git a/env.example b/env.example index db3ca84..5111f46 100644 --- a/env.example +++ b/env.example @@ -3,6 +3,10 @@ NODE_ENV=development PORT=3000 # Database Configuration (PostgreSQL) +POSTGRES_USER=postgres +POSTGRES_PASSWORD=postgres +POSTGRES_DB=qrmaster + # For local development (without Docker): # DATABASE_URL=postgresql://postgres:postgres@localhost:5435/qrmaster?schema=public # For Docker Compose (internal Docker network): diff --git a/scripts/setup.ps1 b/scripts/setup.ps1 index 9e491de..0b11297 100644 --- a/scripts/setup.ps1 +++ b/scripts/setup.ps1 @@ -87,7 +87,7 @@ switch ($choice) { Write-Host "Access points:" Write-Host " - App: http://localhost:3050" Write-Host " - Database UI: http://localhost:8080" - Write-Host " - Database: localhost:5432" + Write-Host " - Database: localhost:5435" Write-Host " - Redis: localhost:6379" } "2" { @@ -115,7 +115,7 @@ switch ($choice) { Write-Host "" Write-Host "Access points:" Write-Host " - App: http://localhost:3050" - Write-Host " - Database: localhost:5432" + Write-Host " - Database: localhost:5435" Write-Host " - Redis: localhost:6379" Write-Host "" Write-Host "To view logs:" diff --git a/scripts/setup.sh b/scripts/setup.sh index a911988..0ad43b3 100644 --- a/scripts/setup.sh +++ b/scripts/setup.sh @@ -98,7 +98,7 @@ case $choice in echo "Access points:" echo " - App: http://localhost:3050" echo " - Database UI: http://localhost:8080" - echo " - Database: localhost:5432" + echo " - Database: localhost:5435" echo " - Redis: localhost:6379" ;; 2) @@ -126,7 +126,7 @@ case $choice in echo "" echo "Access points:" echo " - App: http://localhost:3050" - echo " - Database: localhost:5432" + echo " - Database: localhost:5435" echo " - Redis: localhost:6379" echo "" echo "To view logs:" diff --git a/src/lib/env.ts b/src/lib/env.ts index 088cdf1..3611081 100644 --- a/src/lib/env.ts +++ b/src/lib/env.ts @@ -3,7 +3,7 @@ import { z } from 'zod'; const envSchema = z.object({ NODE_ENV: z.enum(['development', 'production', 'test']).default('development'), PORT: z.string().default('3000'), - DATABASE_URL: z.string().default('postgresql://postgres:postgres@localhost:5432/qrmaster?schema=public'), + DATABASE_URL: z.string(), NEXTAUTH_URL: z.string().default('http://localhost:3050'), NEXTAUTH_SECRET: z.string().default('development-secret-change-in-production'), GOOGLE_CLIENT_ID: z.string().optional(), diff --git a/src/middleware.ts b/src/middleware.ts index 5f50c30..269266e 100644 --- a/src/middleware.ts +++ b/src/middleware.ts @@ -23,6 +23,10 @@ export function middleware(req: NextRequest) { '/barcode-generator', '/custom-qr-code-generator', '/manage-qr-codes', + '/coupon', + '/feedback', + '/vcard', + '/display', ]; // Check if path is public