# Arzt-Termine (Next.js) Verwaltung von Arzt-Terminen als Next.js-Anwendung (App Router) mit MongoDB als Datenspeicher. Design und Layout orientieren sich am Projekt `werte-next`. Vormals bestand das Projekt aus einem getrennten React/Vite-Frontend und einem Express-Backend. Beides wurde in eine einzelne Next.js-App zusammengeführt: - **UI** – React-Client-Komponenten in `components/`, Seite in `app/page.tsx` - **API** – Next.js Route Handler unter `app/api/appointments` - **DB** – MongoDB-Zugriff in `lib/db.ts` ## Funktionen - Termine anlegen, bearbeiten, als erledigt markieren und (soft) löschen - Felder: Arztname, Fachrichtung, Datum/Uhrzeit, Bemerkungen - Druckansicht mit den aktuellen (offenen) Terminen ab heute ## Entwicklung ```bash cp .env.example .env # MONGO_URI setzen npm install npm run dev # http://localhost:3000 ``` ## Produktion (Docker) ```bash cp .env.example .env # MONGO_ROOT_USER / MONGO_ROOT_PASSWD setzen docker compose up -d --build ``` ## Deploy zur Registry ```bash ./deploy.sh [tag] # baut & pusht docker.citysensor.de/aerzte-next ``` ## Umgebungsvariablen | Variable | Beschreibung | | ------------------- | ----------------------------------------------- | | `MONGO_URI` | MongoDB-Verbindung inkl. Datenbankname | | `MONGO_ROOT_USER` | Root-User für den MongoDB-Container (Compose) | | `MONGO_ROOT_PASSWD` | Root-Passwort für den MongoDB-Container | | `APP_PORT` | Host-Port der App (Standard: 3000) |