Blog
Build in Public
October 3, 20256 min

Why I created TAMSIV — the birth of the project

It all started with a common frustration. My wife and I manage a family of four. Shopping lists? On a piece of paper stuck to the fridge. Household chores? In our heads. And when we forget something — which happens often — it's a small daily tension.

At the same time, I'm a member of a diving club. And there, it's organized chaos: everything goes through WhatsApp. Outings, registrations, equipment, reports. Dozens of messages a day in a group where information gets lost. Looking for the date of the next outing? Good luck finding it between the memes and fish photos.

The idea: what if we could just talk?

I thought: why can't we just say what we want to do? "Add milk to the shopping list." "Remind me to prepare the bottles for Saturday." Without opening an app, without typing, without searching for the right field in a form.

That's how TAMSIV was born. A task and memo manager controlled by voice, with a conversational AI that understands what you want and acts accordingly.

Initial technical choices

First commit in October 2025. I immediately opted for a monorepo with three folders: frontend/ in React Native TypeScript, backend/ in Node.js Express with WebSocket, and website/ in Next.js for the landing page.

Why React Native? Because I'm a web developer by training. Pure native would have slowed me down by several months. And with the New Architecture (Fabric), performance is there.

For the database, I chose Supabase. Managed PostgreSQL, integrated authentication, file storage, Realtime — everything I needed in one service.

The voice pipeline

The heart of the project is the voice pipeline. From the first prototype, I wired up the complete chain: Audio PCM 16kHz → WebSocket → Deepgram STT → LLM → Function calling → OpenAI TTS. The user speaks, the backend transcribes, sends the text to an LLM which decides what to do, and returns a voice response.

The first tests were magical. Saying "create a task buy bread for tomorrow" and seeing the task appear with the correct date... that's the kind of moment that confirms you're on the right track.

Solo dev: freedom and solitude

Being a solo developer means complete freedom over technical choices. No meetings, no compromises. But it's also the solitude facing bugs at 11 PM. This logbook is my way of documenting the adventure. Next step: structuring the database.