Spaces:
Runtime error
Runtime error
Commit History
-
✨ Add database management: Supabase persistence, teacher profiles, admin dashboard
chih.yikuan +1: Claude Opus 4.8 (1M context)Build a durable data foundation for analytics + cross-quiz student tracking. Backend - Migrate from ephemeral SQLite to Supabase Postgres via SQLAlchemy 2.0 async + asyncpg. All tables isolated in a dedicated `classlens` schema so they never collide with other apps sharing the Supabase project. - Alembic migrations (applied on container startup); initial schema migration. - New data model: teachers (email/full_name/school/is_admin), first-class students (matched across quizzes by normalized name), quizzes, raw_files, parsed_data, student_results (per-student-per-quiz analytics backbone), prompts, reports (linked to quiz + student). - Rewrote database.py as a SQLAlchemy repository (same public function names). - Teacher registration captures full_name + school; ADMIN_EMAILS bootstrap. - Raw uploaded files archived to Supabase Storage + raw_files metadata. - Save-to-DB flow: report generation persists student_results + linked report; explicit POST /api/sessions/{id}/save-to-…9f97e28
-
Redesign Step 2: per-student report generation with wrong-answer filtering
chih.yikuan +1: Claude Opus 4.6 (1M context)Step 2 now shows a student checklist instead of prompt editor. Users select which students to generate reports for. Backend filters each student's wrong answers and only sends the relevant questions + wrong answers to the LLM, dramatically reducing prompt size. Reports generate sequentially with live progress in Step 3's tabbed viewer. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>f002ae5
-
Redesign ClassLens v2: 3-step exam analysis workflow
chih.yikuan +1: Claude Opus 4.6Replace ChatKit-based chat UI with a structured 3-step workflow: 1. Upload & parse exam files (questions, student answers, teacher answers) via GPT Vision 2. Edit analysis prompts with save/load/share functionality 3. Generate and export HTML reports (PDF/PNG) - Add JWT email/password auth (replace Google OAuth) - Add file processor with multi-format support (PDF, images, text files) - Add image-to-text description for visual exam content - Add model selector (GPT-5.4, 5.3 Instant, 4o, etc.) - Add per-zone file upload with inline parsed data preview - Remove ChatKit SDK, Google Sheets, email service dependencies - Remove .env from tracking (contains API keys) Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>bc45e54