Gelato
I have been building Gelato, a small learning app that helps users study biology with AI-assisted reading, quizzes, and flashcards. The core goal is simple: make it easier to go from “I should study this topic” to actually understanding it in one session.
What Gelato does
Gelato is organized around short, focused study sessions. You pick a biology topic, then move through a few lightweight activities:
- Generate reading material for a selected biology topic
- Ask follow-up questions in a reading chat
- Take short quizzes
- Review flashcards
- Track progress per user
It supports both English and Chinese, and users can either sign in with a profile or continue as a guest.
Try it
You can try Gelato here: https://gelato.streamlit.app/. The app currently requires an access code, so please email me if you want access.
What makes it useful
I wanted something between static notes and open-ended chat: structured enough to keep momentum, but flexible enough to follow your questions. In practice, that means:
- You can start quickly without planning a full curriculum
- Sessions are short enough to finish in one sitting
- You still get room to ask “why” and “what if” questions while reading
Activity history and how it is used
Gelato keeps a history of what you did: what topics you studied, what you read, quiz results, and flashcards you reviewed. That history is there for a practical reason: each new session should feel connected to the last one.
Here is how that shows up in the product experience:
- You can continue where you left off instead of restarting from scratch
- Review activities can focus more on weak spots, not just repeat everything
- Progress becomes visible over time, which makes studying feel less random
- Future suggestions can use your past activity to recommend what to study next
For me, this is the core of Gelato: not just generating study content, but building continuity across sessions.
Current scope
Right now Gelato is focused on biology and designed for quick iteration with real learner feedback. The priority is a clear learning loop:
- Learn something new
- Check understanding
- Revisit what needs reinforcement
- Come back later and keep building from prior sessions
I plan to keep improving that loop so each return session feels more personalized and more useful than the previous one.