Files
rikx-beheer/CLAUDE.md
T
Maarten Elsenaar af1a8e4bed Initial scaffold: offertesysteem (clients, projects, quotes, quote_items)
- Next.js 15 + TypeScript + Tailwind, standalone output
- SQLite schema: users, clients, projects, quotes, quote_items
- HMAC-signed sessie-cookie auth
- Dockerfile (Node 22 Alpine, multi-stage)
- create-admin script
- Doel: portal.rikxplatform.nl

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-09-14 12:24:27 +02:00

1.9 KiB

rikx-platform

Klantbeheer portaal voor projectbeheer en offertes. Inclusief workflow-stappen (statustransities, email-triggers) en calculaties per offerteregel.

Stack

  • Next.js 16 + TypeScript + Tailwind CSS
  • SQLite via node:sqlite (ingebouwd in Node 22, geen extra package)
  • HMAC-signed sessie-cookie auth (geen externe auth-provider)
  • Nodemailer voor email-notificaties

Lokaal draaien

npm install
cp .env.example .env.local
# Vul SESSION_SECRET in (.env.local) — minimaal 32 tekens willekeurig
mkdir -p data
npm run dev   # http://localhost:3000

Admin aanmaken

npm run create-admin maarten@rikx.nl wachtwoord "Maarten"

Database

  • Locatie lokaal: ./data/app.db
  • Locatie productie: /data/app.db (absoluut pad — Next.js standalone doet process.chdir bij start)
  • Schema: lib/db.ts — migraties draaien automatisch bij eerste verbinding
  • Tabellen: users, clients, projects, quotes, quote_items

Infrastructuur (mx-platform.com)

Environment variables

Variabele Standaard Uitleg
SESSION_SECRET — HMAC-secret voor sessie-cookies — per omgeving uniek genereren
DB_PATH ./data/app.db In productie: /data/app.db (absoluut pad)
NODE_ENV development In productie: production
SMTP_HOST — SMTP server voor email-notificaties
SMTP_PORT 587 SMTP poort
SMTP_USER — SMTP gebruikersnaam
SMTP_PASS — SMTP wachtwoord
SMTP_FROM noreply@rikx.nl Afzenderadres

Auto-deploy

Gitea webhook → Coolify. Na elke push naar main automatisch live.

Collega's

Wijzigingen alleen via Git. Push naar main → automatisch live.