Skip to content

Commit 1ec6444

Browse files
lint
1 parent 4b15a6d commit 1ec6444

File tree

3 files changed

+48
-56
lines changed

3 files changed

+48
-56
lines changed

.env.example

Lines changed: 41 additions & 52 deletions
Original file line numberDiff line numberDiff line change
@@ -1,66 +1,55 @@
1+
# =============================================================================
2+
# REQUIRED ENVIRONMENT VARIABLES
3+
# =============================================================================
4+
5+
# Better Auth Configuration
6+
BETTER_AUTH_URL=http://localhost:3000
7+
BETTER_AUTH_SECRET=your-super-secret-key-here-min-32-chars
8+
19
# Database Configuration
2-
POSTGRES_USER=my-user
3-
POSTGRES_PASSWORD=my-password
10+
POSTGRES_USER=username
11+
POSTGRES_PASSWORD=password
412
POSTGRES_DB=workout-cool
513
DB_HOST=localhost
614
DB_PORT=5432
7-
# Format: postgresql://USER:PASSWORD@HOST:PORT/DATABASE
8-
DATABASE_URL=postgresql://${POSTGRES_USER}:${POSTGRES_PASSWORD}@${DB_HOST}:${DB_PORT}/${POSTGRES_DB}
15+
DATABASE_URL=postgresql://username:password@localhost:5432/workout_cool
916

10-
# Authentication
11-
# The URL where your application is running
12-
BETTER_AUTH_URL="http://localhost:3000"
13-
# Generate a secure random string using: openssl rand -base64 32
14-
BETTER_AUTH_SECRET="your-secret-key-here"
17+
# Google OAuth Configuration
18+
GOOGLE_CLIENT_ID=your-google-client-id
19+
GOOGLE_CLIENT_SECRET=your-google-client-secret
1520

16-
# Google OAuth
17-
# Get these from Google Cloud Console: https://console.cloud.google.com
18-
# Required scopes: email, profile
19-
GOOGLE_CLIENT_ID="your-google-client-id.apps.googleusercontent.com"
20-
GOOGLE_CLIENT_SECRET="your-google-client-secret"
21+
# Node Environment
22+
NODE_ENV=development
2123

22-
# OpenPanel Integration
23-
# Get these from your OpenPanel dashboard
24-
OPENPANEL_SECRET_KEY=
25-
NEXT_PUBLIC_OPENPANEL_CLIENT_ID=
24+
# =============================================================================
25+
# OPTIONAL ENVIRONMENT VARIABLES
26+
# =============================================================================
2627

27-
# Environment
28-
# Options: development, production, test
29-
NODE_ENV="development"
28+
# OpenPanel Analytics (Optional)
29+
OPENPANEL_SECRET_KEY=your-openpanel-secret-key
30+
NEXT_PUBLIC_OPENPANEL_CLIENT_ID=your-openpanel-client-id
3031

31-
#SMTP Configuration
32-
# Using MailHog for example. https://github.com/mailhog/MailHog
33-
SMTP_HOST=localhost
34-
SMTP_PORT=1025
35-
SMTP_USER=
36-
SMTP_PASS=
37-
SMTP_FROM="Workout Cool <noreply@workout.cool>"
32+
# SMTP Configuration for Email (Optional)
33+
SMTP_HOST=smtp.gmail.com
34+
SMTP_PORT=587
35+
SMTP_USER=your-email@gmail.com
36+
SMTP_PASS=your-app-password
37+
SMTP_FROM=noreply@yourdomain.com
3838
SMTP_SECURE=false
3939

40-
# Whether to seed sample data on startup
41-
SEED_SAMPLE_DATA=true
42-
43-
# ========================================
44-
# BILLING CONFIGURATION
45-
# ========================================
46-
47-
# Stripe Configuration (optional)
48-
# Get these from https://dashboard.stripe.com
49-
STRIPE_SECRET_KEY="sk_test_..."
50-
STRIPE_WEBHOOK_SECRET="whsec_..."
51-
NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY="pk_test_..."
52-
53-
# Stripe Price IDs
54-
# Create products in Stripe Dashboard and add price IDs here
55-
NEXT_PUBLIC_STRIPE_PRICE_MONTHLY="price_..."
56-
NEXT_PUBLIC_STRIPE_PRICE_YEARLY="price_..."
40+
# Stripe Configuration for Premium Features (Optional)
41+
STRIPE_SECRET_KEY=sk_test_your-stripe-secret-key
42+
STRIPE_WEBHOOK_SECRET=whsec_your-webhook-secret
43+
NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY=pk_test_your-stripe-publishable-key
44+
NEXT_PUBLIC_STRIPE_PRICE_MONTHLY=price_monthly_id
45+
NEXT_PUBLIC_STRIPE_PRICE_YEARLY=price_yearly_id
5746

58-
# RevenueCat Configuration (for mobile app integration)
59-
REVENUECAT_API_KEY=""
60-
REVENUECAT_WEBHOOK_SECRET=""
47+
# Application URL (Required for client)
48+
NEXT_PUBLIC_APP_URL=http://localhost:3000
6149

62-
# Billing Mode for self-hosted
63-
# Options: DISABLED, LICENSE_KEY, SUBSCRIPTION, FREEMIUM
64-
DEFAULT_BILLING_MODE="DISABLED"
50+
# =============================================================================
51+
# DEVELOPMENT OPTIONS
52+
# =============================================================================
6553

66-
NEXT_PUBLIC_APP_URL="http://localhost:3000"
54+
# Seed sample data on first run (Optional)
55+
SEED_SAMPLE_DATA=true

app/api/exercises/route.ts

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,11 @@
1-
import { getExercisesAction } from "@/features/workout-builder/model/get-exercises.action";
2-
import { getExercisesSchema } from "@/features/workout-builder/schema/get-exercises.schema";
1+
32
import { NextRequest, NextResponse } from "next/server";
43

54

5+
import { getExercisesSchema } from "@/features/workout-builder/schema/get-exercises.schema";
6+
import { getExercisesAction } from "@/features/workout-builder/model/get-exercises.action";
7+
8+
69
export async function POST(req: NextRequest) {
710
try {
811
const body = await req.json();

app/api/health/route.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
1-
import { NextResponse } from 'next/server'
1+
import { NextResponse } from "next/server"
22

33
export async function GET() {
4-
return NextResponse.json({ status: 'up' }, { status: 200 })
4+
return NextResponse.json({ status: "up" }, { status: 200 })
55
}

0 commit comments

Comments
 (0)