Inspiration

I love software, even though my field of study doesn't directly involve building it. That love grew at university, as I began to understand how software really works.

A friend introduced me to Devpost in 2025, and that's when I first saw the RevenueCat Shipaton. I had an idea I wanted to enter, so I registered. But I didn't yet have the skills to build an app, and the Shipaton clashed with my end-of-semester exams, so the idea never got built.

Later I realised that vibe coding had closed that skill gap, and that many winners were building this way. So I came back in 2026 with high spirits, determined to finally ship my idea.

What it does

Kandoo is a context-aware memory and action assistant that you talk to the way you'd talk to a friend. No forms, no picking dates from a calendar. You just say it:

"Just left lunch with Kofi. His daughter Adwoa starts at Achimota next week. He finally agreed to the 2.5 percent merchant fee, but only if we waive it for the first three months. Remind me to send him the contract before Friday, and to get Adwoa a small gift this weekend."

From that one breath, Kandoo pulls out everything inside it:

  • The facts worth remembering, written as clean standalone statements, with "he" and "his" resolved to Kofi.
  • The reminders, with "before Friday" and "this weekend" turned into real dates and times.
  • The people involved, each with their own page.
  • A tidy written note of the whole conversation.

You stay in control. Nothing is saved or scheduled until you've looked it over, so Kandoo never quietly commits a wrong guess to your day.

Reminders that get your attention. A reminder fires as a local notification on your phone, even with no internet. If the screen is off, Kandoo wakes the phone with a full-screen alert where you can snooze it, mark it done or dismiss it. Reminders can repeat on the days you choose.

Reminders that wait for a place. Draw any place on the map, such as home, campus or church, and say "Remind me to give Jane her notebook when I get to campus." The reminder fires the moment you arrive. Kandoo never tracks you. It only watches the few places you've drawn, and your location never leaves the phone.

Ask it anything later. For example: "What did we agree on pricing with Kofi?" Kandoo searches what you've told it by meaning, not just by exact words. You never said "pricing", but it still finds the fee deal and answers in plain language.

Show it the world. Photograph a flyer, a business card or a whiteboard, and Kandoo pulls out the event, the date and the people. Photograph a page of handwritten notes, and it becomes an organised note filed in your Library, which you can open in Microsoft Word.

Mr. Kandoo. A voice assistant you hold a real conversation with. He creates reminders and notes, researches topics with real references, reads pages through the camera, and runs your team. Every change he makes appears as a card, and nothing is saved until you say yes.

Teams. Create a team, invite people with a link, and share notes, research, PDFs and photos, with each file showing who sent it. A team leader can send tasks, and each member accepts them into their own reminders.

Insights. Charts of how you've used Kandoo this week or month: your busiest day, how you capture, your reminders done and overdue, and the people and places that came up most.

Four plans, handled through RevenueCat:

  • Free: capture, reminders, your Library, and answers from the last ten days.
  • Personal ($3.99/month): your whole history, Places, kept photos, Insights and Kandoo's own voice.
  • Pro ($9.99/month): work tools, turning pages into notes, and being part of a team.
  • Elite ($19.99/month): Mr. Kandoo, research with references, and leading a team.

The paywall appears at the moment a feature is worth something to you, such as when a question reaches an older memory, and it opens on the cheapest plan that unlocks it.

How I built it

The way I started building Kandoo was quite interesting. I had a history of trying to vibe code things that never became real. So I went to ChatGPT's Projects mode, which I had never used before. I explained the problems I'd had building apps this way and asked it to break app building down into steps I could understand. We went through lessons until I was ready. Then we started on the app itself and built much of the backend, until the project began to show real potential.

When I started hitting ChatGPT's usage limits, I switched to Claude Code to take what I had started and finish it.

The stack:

  • App: React Native with Expo and TypeScript, Android first.
  • Backend: Node and Express, hosted on Render.
  • Database and sign-in: Supabase, a Postgres database with pgvector for searching by meaning.
  • AI: Google Gemini, which interprets what you say, reads photos and documents, and powers search by meaning.
  • Mr. Kandoo: an ElevenLabs voice agent whose tools run on the phone.
  • Subscriptions: RevenueCat, with every plan checked on the server.

A few decisions I'm glad I made:

  • The AI understands; it never acts. Gemini only turns speech into structured data. That data is checked against a strict schema, and ordinary code decides what gets saved. Kandoo is not "an AI with access to your database."
  • One sentence, many actions. My first version could only pull one thing out of a sentence. I rebuilt it so a single capture can produce any number of memories and reminders, because real life comes in messy recaps, not neat commands.
  • Your phone owns time and place. Reminders are scheduled on the device, not on a server, so they fire even when the internet is off. Location is never streamed anywhere.
  • Search that understands meaning. Recall combines search by meaning (vector embeddings) with ordinary keyword search, so a question worded differently from the memory still finds it.
  • Built to stay up. If the main AI model is overloaded, Kandoo automatically falls back to a backup model. Notes and memories save on the phone first and sync once the connection is back.

Challenges I ran into

As someone who hadn't vibe coded a fully working app before, I ran into the usual challenges:

  • fixing broken code;
  • finding my way around the different services I had to connect.

I also hit usage limits more than once: first on ChatGPT, before the project reached the stage I wanted, and then on my Claude Pro weekly limit when I was close to finishing. I had to pay for another account to keep going.

There were technical walls too:

  • The full-screen alert. Getting a reminder to wake a locked phone meant going below what Expo supports out of the box and patching the notification library myself.
  • Free-tier AI limits. At one point Gemini's servers were overloaded, and my own retries were using up the daily quota. I redesigned how Kandoo handles failures, so the app stays useful when the AI is busy instead of breaking.
  • Teaching an AI to count days. Mr. Kandoo kept turning "Friday" into Saturday, even when he had the right date in front of him. I stopped trusting him with dates: the phone now checks that the date he picks really falls on the day you said.

Around the middle of the project I got really discouraged. I was facing serious hurdles adding new screens and features, and I thought I wouldn't finish in time. I decided to keep going anyway, even if I finished late. A few days later, I realised I was going to make it.

Accomplishments that I'm proud of

I'm proud that Kandoo grew from my first MVP into a full product that works end to end:

  • One spoken sentence becomes several memories and reminders, with real times.
  • A reminder can wake a locked phone, or wait until you arrive somewhere.
  • You can ask a question in your own words and get the right memory back.
  • Mr. Kandoo holds a real conversation and acts across the whole app, and never acts without your yes.
  • A team can share files and hand out tasks from their phones.
  • The whole project is open source.

What I learned

The most important things I learned on this journey are resilience and consistency. I had to show up every single day. At the start, I couldn't picture what I was building and didn't really understand what I was doing. But as I worked through errors and kept building, it began to make sense, until I finally saw the app come to life.

On the technical side, I learned that trust is the real product. An AI assistant is only useful if it never acts behind your back, which is why everything in Kandoo waits for your review. I also learned that an error you hide becomes a bug you can never find.

What's next for Kandoo

  • Google Play release, with local prices for Ghana and a smaller download.
  • Kandoo Moments. When you arrive somewhere, Kandoo reminds you what happened there last time, and shows who is usually around you there.
  • More languages, so people can talk to Kandoo the way they actually speak at home.
  • iOS, once Android is solid.

See everything Kandoo can do: greatman-david.github.io/kandoo

Built With

Share this project:

Updates

Submission history