Commit Graph
8 Commits
Author SHA1 Message Date
hahachait 534b51b41b feat: rolling conversation summary + session continuity
- Backend emits session id in SSE; frontend sets activeChat so follow-ups
  reuse the same session (fixes fragmented history).
- sessions.summary column; messages past RECENT_LIMIT (10) are folded into
  a persisted summary via a non-streaming model call.
- buildMessages sends system(+summary) + last 10 messages, bounding context
  while preserving long-range memory.
- Tests: aiMessages (capping + summary injection).
2026-08-19 10:23:56 -04:00
hahachait 56d6f355d1 feat: render assistant replies as markdown
Add react-markdown + remark-math + rehype-katex to render the AI's
markdown (headings, bold, lists, code, blockquotes, tables) and LaTeX
math ($H_2O$ etc.). ReactMarkdown escapes raw HTML, keeping the stored
message rendering safe from XSS. Styled via .markdown-body in Message.css.
Applied to assistant messages only; user text stays plain.
2026-08-19 09:55:25 -04:00
hahachait 00a181134d fix: include current user message in AI context
Persist the user message before streaming so the model receives the
current question (previously only the system prompt was sent on new
chats, causing canned greetings). Also fixes user message being lost
when the AI call errors.
2026-08-19 09:51:41 -04:00
hahachait ff9da4d324 feat: auth, persistence, and AI integration
- Cookie-based auth via backend proxy (httpOnly JWTs)
- Supabase Postgres persistence for sessions/messages/profiles + RLS
- Fix cross-user session leak (token cache keyed by full token, not 50-char prefix)
- Fix missing table grants (42501) via migration; auto-provision profiles on user creation
- Chat validation, ownership checks, rate limiting, /api/chat/sessions route ordering
- Frontend auth-state reset + credentials include
- OpenRouter AI provider (OpenAI-compatible base URL, reasoning disabled)
- Tests: chatValidation, appState
2026-08-19 09:41:40 -04:00
hahachait 93a35a7343 added: grade, subject and chapter in new chat, fixed that shitty card bug 2026-08-18 04:44:10 -04:00
hahachait ab88ae30f1 refactor: redesign UI to match EduAI Refined Workspace
- Replace Bauhaus aesthetic with Material Design 3-inspired layout
- Add working grade/subject/chapter dropdown selectors with placeholder options
- Fix ChatInput layout: remove position:absolute, use flex column flow
- Update sidebar with Material Icons, upgrade card, and clean hover states
- Add TopNav dropdowns with click-outside-to-close behavior
- Modernize message bubbles, action buttons, and welcome state
- Replace SVG icons with Material Symbols throughout
- Apply consistent BEM naming, CSS custom properties, no inline styles
2026-08-15 04:40:26 -04:00
hahachait e0ae1f91c1 bauhaus update 2026-08-14 08:44:30 -04:00
hahachait c9085bdefb feat(frontend): Scholarchat-inspired UI refactor with top nav, sidebar, and message actions
- Add TopNav component with AI Chat, Study Guides, Progress tabs
- Refactor sidebar to include brand, new chat, subjects, chat history, settings
- Add message action buttons (Helpful, Note, Deeper) on assistant responses
- Enhance ChatInput with photo, mic attachment icons and AI disclaimer
- Improve welcome state with 2x2 suggested prompt grid
- Update global layout for proper sidebar offset (fix nav overlap)
- Remove obsolete Header component
- All styles: strict BEM naming, zero inline CSS, Paper Look theme
2026-08-14 08:07:42 -04:00