Focusify

Know where your time goes. Speak it or type it — AI turns your day into a clean, categorized timeline.

Inspiration

Time is the one resource you can't get back, yet most of us have no real sense of where it goes. We'd finish a day "feeling busy" but unable to say what we actually did with it. Seeing where your time goes is the first step to taking it back — but every tracker we tried made logging the chore: Clockify leans on manual timers (wasting the time you're trying to save), Timely doesn't track on your phone, and Timing is slow on iOS.

So we flipped the problem: instead of making people fight a stopwatch, what if you could just say what you did and let an AI agent organize it? Capture as much of your time as possible, any way possible — voice, text, or (eventually) automatic background monitoring.

What it does

  • Capture by voice or text — say "from 9 to 11 I worked on the API, then took a break," or type it.
  • AI parsing — Claude turns messy natural language into structured time blocks with real start/end times.
  • Automatic categorization — every activity is sorted into Work, Communication, Learning, Entertainment, or Break — no manual tagging.
  • Hour-by-hour visualization — a clean, color-coded timeline, a weekly History view, and an Apps & Websites breakdown.
  • Accounts, light/dark mode, and a polished branded UI.

How we built it

A full-stack app split across four focused tracks, integrated through a shared API contract:

  • Speech-to-text: Deepgram transcribes recorded audio.
  • AI agent: the Anthropic (Claude) API converts a transcript into categorized, time-stamped blocks — with a fast offline heuristic parser as a fallback.
  • Frontend: Angular — dashboard, timeline, history, settings, dark mode.
  • Backend: Node.js + Express, with Redis for storage (graceful in-memory fallback) and JWT auth.

and the day's total tracked time is simply $T = \sum_h d_h$ — the number rendered at the top of your dashboard.

Challenges we ran into

  • Limited time — scoping an ambitious "track time any way possible" vision down to a working MVP.
  • Privacy & permissions — native background monitoring on Mac/iOS needs heavy OS entitlements, so we shipped the AI capture methods first.
  • Natural-language time parsing — "an hour," "until 9 pm," overnight spans, and shared AM/PM across ranges were all deceptively hard.
  • Integration friction — merging four parallel branches meant rebases and conflicts (including one half-merged feature that briefly broke main); a written API contract and smaller PRs kept us unblocked.

What we learned

  • AI is a feature, not the whole product. The magic lived in the glue — good prompts, structured outputs, and graceful fallbacks — not the model alone.
  • Contracts beat coordination. A shared API contract saved more time than constant syncing.
  • Integrate early and often. Small, frequent PRs hurt far less than one giant end-of-hackathon merge.
  • Design carries the demo. A consistent theme and thoughtful UX made the same features feel dramatically more compelling.

What's next for Focusify

  • Background monitoring of Mac & iOS usage — auto-capture apps and sites, no logging required.
  • Integrations — calendar, Strava, Apple Health.
  • Import a schedule from an image as another capture method.
  • App blocking during focus hours.
  • Personalized AI categories that learn what "productive" means for you.

Built With

Share this project:

Updates