Inspiration

CareCircle started with my mum. She was the one keeping our household running — chores, errands, appointments etc. She needed an easy way to hand tasks out to the rest of the family. In practice that meant messages in the family group chat that got buried, the same reminder sent three times, and "I thought someone else was doing it."

I wanted to build something that made sharing the load as easy as asking for help, where everyone can see what needs doing, who's doing it, and when it needs to be done. All in one place.

What it does

CareCircle is a shared home for a family's tasks and care.

  • One list of tasks for the whole family, with due times, priorities, repeats (daily, weekly, monthly) and a full history of who did what.
  • Smart suggestions for who should take a task. It reads what the task is: homework goes to the kids, driving goes to someone who drives, heavy jobs go away from grandparents. It also avoids anyone who's busy at that time or already has the most on their plate. With AI switched on, it also uses the family's own notes; without it, a set of clear rules still makes a sensible suggestion.
  • Shared tasks. A task can belong to several people. Anyone on it can tick it off, and everyone else is told.
  • A family calendar. Everyone's week at a glance. People can link their own calendar (specifics are not shared, only the timings of unavailability are shared) or type in their usual schedule, like work or school.
  • Family notes for the things everyone needs to know, like medication, routines and contacts. Characteristics like who can drive etc., helps the llm make better decisions.
  • A Telegram bot, because that's where my family group chat is. It sends reminders when something becomes overdue, has a one-tap "Done" button, and lets you add a task just by texting it, or tagging it in the group chat.
  • An assistant you can ask "Who's free on Saturday morning?" or "What does Grandma need this week?"

How we built it

  • Frontend: React 19, TypeScript, Vite and Tailwind CSS, with animated illustrations and light and dark themes.
  • Backend: FastAPI and SQLAlchemy in Python.
  • AI: OpenAI with structured outputs, so the model can only answer in a fixed shape and only suggest real family members. Every AI feature has a non-AI fallback.
  • Notes search: ChromaDB searches notes by meaning when running locally, and keyword ranking in the database is used when deployed.
  • Calendars: standard iCal links from Apple, Google and Outlook calendars.
  • Hosting: Vercel runs both the app and the backend as a serverless function, with the database on Supabase (Postgres) — completely free.
  • Testing: over 200 backend tests and end-to-end browser tests with Playwright, run against both SQLite and Postgres.

Challenges we ran into

  • Running a "real" backend for free. My app was built to run on my laptop: a database file on disk, a Telegram bot listening all the time, and reminders checked every minute. A serverless function has none of that. I reworked it to switch modes automatically when deployed: Telegram delivers messages to a secure webhook, overdue reminders are checked during normal app use, and notes are searched in the database instead.
  • Speed. After launching, creating a task felt slow. The function was running in the US while the database was in Mumbai, so every query crossed the world. Moving the function next to the database took a single lookup from about 2 seconds to 0.15 seconds, about 13 times faster.
  • Letting several people share one task meant reworking how tasks are stored, then updating every feature that assumed one owner: reminders, the calendar, notifications, suggestions and the Telegram bot.
  • Privacy. Families share sensitive things. Calendar links are never shown back to anyone, linked calendars only reveal busy times, and the AI can read the family's data but never change anything on its own.

Accomplishments that we're proud of

  • My own family is actually using it.
  • The suggestions make sense. Asking it who should "do homework" picks the student, not the adults. It takes the family members role/title into account and makes assignments based on that.
  • animated scenes, transitions, dark mode, and it works well on phones.

What we learned

  • How to make AI dependable: constrain its answers, check them, and always have a fallback. If the LLM is down, the app can still function without the AI features.
  • That where your code runs matters, like how the database lookup speed is affected.
  • I consulted my own family on what they would like the app to have, so I could better understand what a real family would need.

What's next for CareCircle

  • Switches in the app to turn AI features on/off
  • A home-screen app for phones, with push notifications. Right now its just a web app that you can add to home screen.
  • Hopefully its something my family can use in the long run.

Built With

Share this project:

Updates

Submission history