# Menschheits-Enzyklopaedie Eine vorbereitete V1 fuer eine quellenpflichtige Wissensplattform mit KI-Frageportal, KI-Recherche, Community-Beitraegen und auditierbarer KI-Moderation. ## Stack - Next.js App Router mit TypeScript und Tailwind CSS - Postgres mit Prisma - NextAuth Credentials-Grundlage fuer spaetere Rollen-Logins - LiteLLM-kompatible LLM-Schicht fuer lokale und externe Modelle - Vitest fuer fokussierte Service-Tests ## Lokale Einrichtung 1. `.env.example` nach `.env` kopieren und Werte setzen. 2. Postgres starten, zum Beispiel mit `docker compose -f docker-compose.example.yml up postgres`. 3. Prisma Client generieren: `npm run prisma:generate`. 4. Migrationen fuer die Entwicklung ausfuehren: `npm run db:dev`. 5. App starten: `npm run dev`. ## Wichtige Routen - `/` - Frageportal und KI-Recherche - `/admin` - Admin Center fuer KI-Moderationsentscheidungen - `/api/health` - Health Check fuer App und Datenbank - `/api/questions` - quellenbasierte KI-Antworten - `/api/research` - KI-Recherche mit Quellenpflicht und Moderation - `/api/contributions` - Community-Beitraege ## Docker-Vorbereitung Das Repository enthaelt ein Dockerfile und `.dockerignore`, aber noch keinen Release- oder Publish-Prozess. Das Image erwartet Runtime-Konfiguration ueber Umgebungsvariablen und fuehrt keine destruktiven Migrationen beim Start aus. Produktionsnaher Build: ```bash docker build -t human-archive:local . ``` ## Entwicklungshinweise - Ohne `LITELLM_BASE_URL` und `LITELLM_API_KEY` nutzt die App einen lokalen Fallback, damit Builds und UI-Flows nicht an fehlenden Modellzugangsdaten scheitern. - Die API akzeptiert in `NODE_ENV !== "production"` den Header `x-demo-role: MEMBER` oder `x-demo-role: ADMIN`, um Workflows ohne eingerichtetes Login zu testen. - Kein veroeffentlichter Wissenseintrag darf ohne gespeicherte Quelle entstehen.