Files
BizzleBot a7c138add1 v2.0.0: Complete rewrite — React + Express + PostgreSQL + Docker
BREAKING: Full rewrite from static HTML to production-grade stack.

Features:
- React 18 + Vite + Tailwind CSS (mobile-first)
- Express + Prisma + PostgreSQL backend
- JWT authentication with role-based access
- Weekly Mon-Sun timesheets with auto-save
- Multiple homeowner entries per day
- Submit → Approve/Reject workflow
- Server-side PDF generation
- SMTP email integration
- Admin panel with reporting & filters
- Dark mode (system-aware)
- Docker Compose one-command deploy
- Non-root containers, Helmet, bcrypt, Zod validation
2026-02-15 20:16:46 +00:00

23 lines
1.3 KiB
Bash

# ─── Database ───────────────────────────────────────────
DATABASE_URL=postgresql://coastal:coastal_secret@localhost:5432/coastal_timesheet
# ─── JWT Secrets ────────────────────────────────────────
# Generate with: node -e "console.log(require('crypto').randomBytes(64).toString('hex'))"
JWT_SECRET=change-me-to-a-random-64-byte-hex-string
JWT_REFRESH_SECRET=change-me-to-a-different-random-64-byte-hex-string
# ─── Server ────────────────────────────────────────────
PORT=3001
NODE_ENV=development
CORS_ORIGINS=http://localhost:5173,http://localhost:3000
# ─── SMTP (Email) ──────────────────────────────────────
SMTP_HOST=smtp.gmail.com
SMTP_PORT=587
SMTP_USER=your-email@gmail.com
SMTP_PASS=your-app-password
SMTP_FROM=your-email@gmail.com
# ─── Admin ──────────────────────────────────────────────
ADMIN_EMAIL=bizzle@coastalcontracting.com