Streaming tutor pipeline
User messages are saved through Convex, assistant work is scheduled through backend actions, and the frontend subscribes to streamed UI messages so the session feels live.

Active build
Studi is an agentic tutor that uses Socratic chat, real-time AI streaming, and interactive Sparks to help students work through ideas instead of just reading answers.
description
The product loop is simple: a student asks what they do not understand, Studi asks back, then it builds the right artifact when words are not enough.
I built the system around chat-first tutoring, multi-thread conversations, live assistant streaming, file/image attachments, generated learning artifacts, quota tracking, and an early-access waitlist.
The goal is to make the AI feel like a tutor with tools, not a text box with a nicer skin.
tech stack
architecture
User messages are saved through Convex, assistant work is scheduled through backend actions, and the frontend subscribes to streamed UI messages so the session feels live.
Studi can create inline learning artifacts such as sandboxed HTML/CSS/JS scenes, Desmos graphs, quizzes, and flashcard sets for the exact concept inside the conversation.
A single Studi Convex Agent owns the tutor behavior and tool wiring while OpenRouter handles model access, keeping model routing separate from the product UI.
Clerk handles auth and subscription state; Convex tracks threads, messages, uploads, usage, billing sync, telemetry, and waitlist handoff.
links