Inspiration
Spool was inspired by a habit I already use to clear my mind. When I feel overwhelmed, I go on a bike ride and talk through my thoughts out loud. Sometimes I am processing emotions; other times I am remembering errands, brainstorming ideas, or trying to make a decision.
That idea became Spool, an AI thinking companion designed to help people talk things out and come back clear.
What it does
Transcribes the voice recording. Detects why the user is speaking. Organizes the transcript into a calm, journal-style reflection. Creates to-dos only when the user mentions real tasks, plans, or responsibilities. Saves the reflection locally in the browser. Connects related past reflections through Echo.
How we built it
Next.js TypeScript React Browser MediaRecorder OpenAI speech-to-text OpenAI Responses API Structured outputs OpenAI embeddings Browser localStorage ChatGPT Sites
Challenges we ran into
One of our biggest challenges was preventing the AI from turning every thought into advice. If a user said, “I’m sad that he hasn’t texted me,” an early version might suggest tasks such as “Reach out to him” or “Set boundaries.” Those suggestions were not grounded in what the user requested and made the reflection feel judgmental. Another challenge was deciding how much information to display. We redesigned the reflection as a compact collection of overlapping paper folders so users can choose what they want to explore.
Accomplishments that we're proud of
Spool is my first independently built project, so completing and deploying a functional application is the accomplishment I am most proud of.
What we learned
We learned how to scope a large idea into a realistic first version and improve it through repeated testing.
What's next for Spool
Search and filters for saved reflections, Better controls for managing privacy and stored data and Tags for recurring people, projects, emotions, and goals.
Built With
- chatgpt
- localstorage
- lucide
- mediarecorder
- next.js
- react
- responses
- speech-to-text
- typescript
- vitest
Log in or sign up for Devpost to join the conversation.