No description
Find a file
JODI 7604b8c575
Some checks failed
Build & Push Images / build-and-push (push) Has been cancelled
fix: recover truncated JSON by finding last complete job object
2026-04-27 16:02:09 +00:00
.forgejo/workflows fix: use pre-built registry images, add CI build pipeline 2026-04-27 06:26:27 +00:00
backend fix: recover truncated JSON by finding last complete job object 2026-04-27 16:02:09 +00:00
frontend feat: add starting point + background questions, readiness assessment on job cards 2026-04-27 15:31:28 +00:00
nginx fix: disable nginx buffering for SSE streaming routes 2026-04-27 14:45:56 +00:00
.gitignore feat: JODI — eine App, Karriere-Erlebnis + Berater-Chat 2026-04-27 06:11:45 +00:00
docker-compose.yml fix: protect data volume with external:true 2026-04-27 15:01:44 +00:00
README.md feat: JODI — eine App, Karriere-Erlebnis + Berater-Chat 2026-04-27 06:11:45 +00:00

JODI — Karriere-Kompass

Eine App. Kein Chat-Fenster.

Was es ist

JODI ist ein geführtes Job-Discovery-Erlebnis. Nutzer beantworten 6 einfache Fragen und erhalten ein reichhaltiges, personalisiertes Karriereprofil mit passenden Berufsbildern, Gehaltsrahmen, Karrierepfaden und Markteinblicken. Ein eingebetteter Berater-Chat steht kontextuell für Rückfragen bereit.

Features

  • Geführter Flow — 6 Fragen, kein Chat-Feeling
  • Reichhaltige Ergebnisse — Jobs mit Gehalt, Karrierepfad, Skills, Einstiegswegen
  • Berater-Chat — KI kennt dein Profil, antwortet kontextuell
  • Gast + Account — funktioniert ohne Konto, Daten optional dauerhaft speicherbar
  • Export — PDF & JSON
  • Konfigurierbare AI-Provider — Claude, OpenAI, jeder OpenAI-kompatible Endpunkt

Starten

git clone git@forgejo.thiel.tools:thiel/jodi-app.git
cd jodi-app
docker compose up -d --build
# → http://localhost:8080

Provider konfigurieren (Admin)

  1. Konto mit role = 'admin' in SQLite setzen:
    UPDATE users SET role='admin' WHERE email='deine@email.de';
    
  2. Im laufenden Container:
    docker exec -it jodi-backend sqlite3 /app/data/jodi.db \
      "UPDATE users SET role='admin' WHERE email='deine@email.de';"
    
  3. Provider-API via POST /api/providers verwalten (JWT erforderlich)

Oder: direkt per API mit einem Admin-Token:

curl -X POST http://localhost:8080/api/providers \
  -H "Authorization: Bearer <token>" \
  -H "Content-Type: application/json" \
  -d '{"name":"Claude","type":"anthropic","api_key":"sk-ant-...","default_model":"claude-haiku-4-5-20251001","enabled":true}'

Forgejo Auto-Deploy

Secrets setzen: DEPLOY_HOST, DEPLOY_USER, DEPLOY_SSH_KEY

Jeder Push auf main → automatisches Deployment.

Struktur

jodi-app/
├── docker-compose.yml
├── nginx/nginx.conf
├── backend/              Node.js + Express + SQLite
│   └── src/
│       ├── routes/auth.js
│       ├── routes/analysis.js   ← KI-Analyse mit Streaming
│       ├── routes/results.js
│       ├── routes/chat.js       ← Kontextueller Berater-Chat
│       └── routes/providers.js
└── frontend/             React + Vite
    └── src/
        ├── pages/LandingPage.jsx
        ├── pages/FlowPage.jsx      ← Geführter Discovery-Flow
        ├── pages/ResultPage.jsx    ← Ergebnisse + Chat-Panel
        ├── pages/DashboardPage.jsx
        └── pages/AuthPage.jsx