Spaces:
Sleeping
Sleeping
Commit History
-
feat: add "Sign in with Google" (Google SSO) for teachers/admins
chih.yikuan +1: Claude Opus 4.8 (1M context)Ports the Google-SSO design from chengzhi-edu/sel-chat-coach#17 into this FastAPI + React stack (NextAuth itself isn't usable here). Backend - /api/auth/google/login + /api/auth/google/callback (OAuth2 auth-code flow, HttpOnly state cookie for CSRF, same-origin redirect back to the SPA with the app's own JWT in ?token=). - google_login_or_create() admission rule: existing account (by google_id or email) allowed; @taboola.com auto-created as admin on first login; everyone else rejected (NeedInvitation). - teachers.google_id column (unique) + password_hash made nullable for Google-only accounts; alembic migration 0016. - GOOGLE_CLIENT_ID / GOOGLE_CLIENT_SECRET settings. Frontend - "使用 Google 登入" button on the login screen. - App bootstrap consumes ?token= from the OAuth redirect; LoginForm surfaces ?auth_error= codes. Existing email/password login is unchanged. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>6726707
-
Add database management: Supabase persistence, teacher profiles, admin dashboard (#1)
- ✨ Add database management: Supabase persistence, teacher profiles, admin dashboard (9f97e2888339dd0323b003479f8691cbcf0ea052) - 🐳 Bump frontend builder to node:22-slim for Vite 7 (>=20.19/22.12 required) (c7044b0c28cc90bebd5f45e00831a4cf5ca1accb) - 🛡️ Fail loud on misconfigured prod DB; Dockerfile migrate && serve (c43fd58ec8aff83b88ef376511e291a963d246a8)4c4a722
-
🚀 ExamInsight: AI-powered exam analysis for teachers
chih.yikuanFeatures: - Google Forms/Sheets integration - AI grading with GPT-4.1-mini - Beautiful HTML report generation (bilingual EN/中文) - Chart.js visualizations - Real-time tool call logging - Email reports via Gmail SMTP - Docker deployment for HF Spaces054d73a