No description
|
|
||
|---|---|---|
| .forgejo/workflows | ||
| backend | ||
| frontend | ||
| nginx | ||
| .gitignore | ||
| docker-compose.yml | ||
| README.md | ||
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)
- Konto mit
role = 'admin'in SQLite setzen:UPDATE users SET role='admin' WHERE email='deine@email.de'; - Im laufenden Container:
docker exec -it jodi-backend sqlite3 /app/data/jodi.db \ "UPDATE users SET role='admin' WHERE email='deine@email.de';" - Provider-API via
POST /api/providersverwalten (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