📦 Projekt-Überblick

Die Vereins-App ist eine Full-Stack-Webanwendung zur digitalen Verwaltung von Lagerbeständen, Buchungen und Benutzern für einen Verein. Die App ersetzt manuelle Bestandslisten durch ein rollenbasiertes System mit Echtzeit-Bestandsübersicht, Ein-/Ausbuchungen und Admin-Funktionen.

Entwickelt mit modernsten Technologien wie Next.js 16, React 19 und PostgreSQL, bietet die Anwendung eine skalierbare und wartbare Lösung für digitales Bestandsmanagement.

🖼️ Screenshots

Login-Bereich
Vereins-App Login-Bereich

Sicherer Login mit JWT-Authentifizierung und bcrypt-Passwort-Hashing

Dashboard-Übersicht
Vereins-App Dashboard

Zentrale Übersicht mit Echtzeit-Statistiken und Schnellzugriff auf alle Module

✨ Funktionsumfang

📊 Warenwirtschaft

Artikel und Kategorien anlegen, bearbeiten und löschen. Lagerbestände mit Ein- und Ausbuchungen verwalten inkl. automatischer Bestandsberechnung.

⚠️ Bestandswarnungen

Automatische Low-Stock-Erkennung wenn Artikel unter den definierten Mindestbestand fallen.

👥 Benutzerverwaltung

Admins können Benutzer anlegen und löschen. Drei Rollen (Admin, Vorstand, Mitglied) mit abgestuften Berechtigungen.

🔐 Rollenbasiertes System

Mitglieder sehen Bestände, Vorstand kann zusätzlich buchen, Admins haben Vollzugriff inkl. Stammdaten und Benutzerverwaltung.

📈 Dashboard

Zentrale Übersicht mit Statistiken (Artikelanzahl, Kategorien, niedrige Bestände, aktuelle Buchungen) und Schnellzugriff auf alle Module.

🔒 Sicherheit

JWT-Authentifizierung mit HttpOnly Cookies, bcrypt-Passwort-Hashing und Edge-Middleware für performante Verifizierung.

🛠️ Technologie-Stack

Bereich Technologie
Framework Next.js 16 (App Router, Turbopack)
Frontend React 19, TypeScript 5
Styling Tailwind CSS v4 (CSS-first)
Backend/API Next.js Route Handlers (REST)
Datenbank PostgreSQL
ORM Prisma 7
Authentifizierung JWT (HttpOnly Cookies), bcrypt, Edge-Middleware
Testing Vitest 4, Unit Tests mit Mocking
Monorepo pnpm Workspaces
Code-Qualität ESLint, Prettier, Husky (pre-commit & pre-push Hooks)
Hosting-ready Node.js Runtime, Docker-kompatibel

🏗️ Architektur-Highlights

🔹 Monorepo-Struktur

Saubere Paket-Trennung mit pnpm Workspaces für optimale Modularität und Wartbarkeit.

🔹 Edge Middleware

Performante JWT-Verifizierung ohne DB-Roundtrip bei jedem Request für maximale Performance.

🔹 Server-seitige Rollenprüfung

Bei jeder API-Anfrage direkt gegen die Datenbank — JWT wird nur für Authentifizierung, nie für Autorisierung vertraut. Zero-Trust-Prinzip für maximale Sicherheit.

🔹 Transaktionssichere Buchungen

Prisma-Transaktionen mit serverseitiger Validierung — kein negativer Bestand möglich. Cascade-Deletes innerhalb von DB-Transaktionen für referentielle Integrität.

🔹 Umfangreiche Test-Abdeckung

Vollständige Backend-Logik mit isolierten Unit Tests für hohe Code-Qualität und Wartbarkeit.