feat: Dashboard-Pipeline, AudioHub, WordGenerator, reviewed-Status

- Dashboard: Pipeline-Übersicht (Counts pro Status) + Werkzeug-Kacheln
- AudioHub (/audio): Coverage-Matrix je Tabelle×Sprache, Generieren-Buttons, Player
- WordGenerator (/content/words): Thema→KI-Vorschau→Übernehmen als translated
- reviewed in STATUS_COLORS + Status-Optionen (objects/questions/statements/pairs)
- audios-Tabelle um source_*/language erweitert

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
2026-06-02 21:30:03 +02:00
parent 232ba1ece5
commit 465c6e4954
7 changed files with 454 additions and 29 deletions

View File

@@ -6,6 +6,8 @@ import DatabaseAdmin from './pages/DatabaseAdmin';
import TableView from './pages/TableView';
import ContentHub from './pages/ContentHub';
import ContentCreation from './pages/ContentCreation';
import AudioHub from './pages/AudioHub';
import WordGenerator from './pages/WordGenerator';
function RequireAuth({ children }) {
const user = getUser();
@@ -23,6 +25,8 @@ export default function App() {
<Route path="/db/:tableKey" element={<RequireAuth><TableView /></RequireAuth>} />
<Route path="/content" element={<RequireAuth><ContentHub /></RequireAuth>} />
<Route path="/content/creation" element={<RequireAuth><ContentCreation /></RequireAuth>} />
<Route path="/audio" element={<RequireAuth><AudioHub /></RequireAuth>} />
<Route path="/content/words" element={<RequireAuth><WordGenerator /></RequireAuth>} />
<Route path="*" element={<Navigate to="/" replace />} />
</Routes>
</BrowserRouter>