-
-
-
-
-
-
-
One small step at a time: OneThing respects times you type ("You said 10:00 AM") and adds a Directions shortcut for errands.
-
Tapping Directions opens Google Maps to the actual Starbucks on UMBC's campus.
-
Emailing a professor? OneThing adds an Open draft shortcut so the hardest part, getting started, is done for you.
-
Gemini writes a short, polite email draft, so the student only has to review it and hit send.
-
After each step, a calm celebration and a breathing prompt: progress without pressure.
-
Brain dump everything on your mind, as messy as you want. Typos and all.
Inspiration
As a freshman at UMBC, you might be juggling six courses, clubs, friends, family, a messy dorm, and adjusting to campus life. Everyone says "make a to-do list," but staring at fourteen tasks often makes stress worse. The problem isn't knowing what to do. It's knowing what to do first, and when. So a lot of us just freeze.
What it does
OneThing turns a messy brain dump into one small, doable step at a time.
- Brain dump: type everything on your mind, as messy as you want.
- One task at a time: instead of a full list, you see a single next step that fits right now.
- Respects your plans: if you write "coffee at 7am," it shows "You said 7:00 AM." If you don't give a time, our ML model predicts the best time and place.
- Make it smaller: if a step still feels too big, it breaks it into 2–3 tiny actions.
- Action shortcuts: opens a Gmail draft already written for emailing a professor, Google Maps directions for errands, or Google Calendar for scheduling.
- Reflect: a calm summary of what you finished, with no judgment for what's left.
How we built it
- Design: UI designed in Google Stitch.
- Backend: Python and Flask, deployed on Google Cloud Run.
- Gemini API: reads the brain dump, splits it into small tasks, extracts stated times and places, and writes email drafts.
- Custom ML model: trained on Microsoft Research's MS-LaTTE dataset (10,101 real to-do tasks, labeled by annotators with when and where each is usually done). We used TF-IDF features with logistic regression and balanced class weights. On macro F1, the model scores 0.66 vs. about 0.27 for a most-common-label baseline on location, and 0.40 vs. about 0.16 on time of day.
- Tools: built with the help of Google Antigravity's AI coding agent.
Challenges we ran into
- The first version silently returned pre-written sample tasks when Gemini was busy, so we added model fallbacks and a visible notice when sample tasks are shown.
- The ML model only sees task wording, so it ignored times students typed. We now use stated times and places first and let the model fill in the gaps.
- The dataset has few school-specific tasks, so Gemini handles schoolwork while the model is strongest on everyday errands and chores.
Accomplishments that we're proud of
A working, deployed app with a real trained model, built solo in 24 hours. Our favorite moment: the same brain dump gives a study task in the morning and a small, restful task at night.
What we learned
How to train and evaluate a text classifier on real-world data, why accuracy can be misleading on imbalanced classes, and how to combine an LLM with a traditional ML model.
What's next for OneThing
Accounts so tasks persist, a mobile app, training on more student-specific tasks, and learning each student's personal patterns over time.
Log in or sign up for Devpost to join the conversation.