No description
- TypeScript 78.7%
- CSS 18.5%
- Dockerfile 1.9%
- HTML 0.9%
| public | ||
| src | ||
| .dockerignore | ||
| .env.example | ||
| .gitignore | ||
| bun.lock | ||
| docker-compose.yml | ||
| Dockerfile | ||
| index.html | ||
| package.json | ||
| README.md | ||
| tsconfig.json | ||
| vite.config.ts | ||
☕ Kaffeekasse
Einfache Webanwendung zur Verwaltung der Büro-Kaffeekasse.
Features
- 🔐 Login mit Session-Cookie
- 👥 Benutzer einladen (per E-Mail mit temporärem Passwort)
- ☕ Getrunkene Kaffees buchen (0,95 € pro Tasse)
- 🫘 Bohneneinkauf abrechnen
- 💸 Zahlungen zwischen Personen erfassen
- 📊 Übersicht aller Personen mit Saldo
- 📋 Buchungslisten (eigene + andere)
Setup
# 1. Abhängigkeiten installieren
bun install
# 2. .env anlegen
cp .env.example .env
# .env anpassen (SMTP-Daten, DB-Pfad, etc.)
# 3. Entwicklung starten (beide Server parallel)
bun run dev
Produktion
# Frontend bauen
bun run build:frontend
# Server starten (dient auch das gebaute Frontend aus)
bun run start
Umgebungsvariablen
| Variable | Standard | Beschreibung |
|---|---|---|
DATABASE_PATH |
./kaffeekasse.db |
Pfad zur SQLite-Datei |
PORT |
3000 |
Server-Port |
SMTP_HOST |
localhost |
SMTP-Server |
SMTP_PORT |
587 |
SMTP-Port |
SMTP_SECURE |
false |
TLS (true/false) |
SMTP_USER |
– | SMTP-Benutzername |
SMTP_PASS |
– | SMTP-Passwort |
SMTP_FROM |
Kaffeekasse <...> |
Absenderadresse |
APP_URL |
http://localhost:5173 |
URL der App (für E-Mail-Links) |
Technologie
- Backend: Bun + SQLite (native
bun:sqlite) - Frontend: React 18 + TypeScript + Vite
- E-Mail: Nodemailer