Files
human-archive/README.md
MrSphay f29339cf12
Some checks failed
Build and publish Docker image / docker (push) Failing after 2m33s
Initial human archive app
2026-06-26 21:31:46 +02:00

45 lines
1.8 KiB
Markdown

# 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.