Olga portrait
Beyond work AI Experiments

Things I built because I needed them.

These are personal projects I built for problems in my own life, and I still use most of them.

Dimme. The sleep app I built for myself

Lovable claude Figma ElevenLabs Suno GarageBand Midjourney

Every night I had the same routine: breathing app, then meditation app, then grab my phone in the dark to start the music. Three interruptions right at the moment I was finally calming down.

And the voices. I went through dozens of meditation apps and couldn't find a single voice that felt right to me. Voice is deeply personal before sleep — pace, tone, accent, energy — and I had a very clear sense of what I needed. I just couldn't find it anywhere.

DimMe app — hands holding phone in low light

What I built

A personal sleep app where you compose your own session: pick a breathing technique, add meditation, choose music — then start and leave your phone alone. No switching, no touching the screen in the dark.

How I built it

I created a custom calming voice in ElevenLabs through dozens of prompt iterations until the tone and pace felt exactly right. Wrote all breathing and meditation scripts myself. Generated sleep music in Suno, mixed everything in GarageBand — a tool I'd never used before. Designed every screen in Figma, created illustrations in Midjourney, built the entire app in Lovable in two days.

The result

It works. I've used it every night since I built it. A month later, I was falling asleep in minutes — something that genuinely hadn't happened in years.

Mouth Ninja. A therapy app.

cursor claude figma recraft

My son's myofunctional therapist prescribed daily mouth exercises for tongue position and jaw development, twice a day, every day without exception. I'm supposed to make sure they happen. The problem: I can't watch every session, and he has exactly zero motivation to do them on his own.

Mouth Ninja app — hands holding phone in low light

What I built

A simple exercise app where he opens it, sees his list for morning or evening, taps an exercise and sees himself on camera, like a mirror, with a timer running. The camera keeps his attention on what he's actually doing. Face tracking detects whether he's moving, so waiting out the timer without doing anything doesn't work.

What I got wrong and what actually worked

My first version had streaks, points and a leaderboard. None of it held attention past the first week. The reward was too abstract and too far from the exercise itself.

What worked was tightening the loop: a funny gif right after each exercise, and a spin wheel to play once the full list was done. Immediate payoff instead of a running score. That was enough to turn a chore into something worth finishing.

What's next

Advanced movement recognition — teaching the app what correct mouth positions look like and comparing them in real time to what he actually does. Possible with MediaPipe or TensorFlow.js. On the roadmap.

I got tired of compromising. So I built it myself.

cursor claude chatgpt figma midjourney

I had a site on Squarespace. It looked like Squarespace. Constructor tools give you speed but steal your design decisions. I wanted full control, so I switched to building it myself.

This entire portfolio site, designed in Figma, built in Cursor with AI assistance. Every breakpoint, every animation, exactly as designed.

Portfolio site screenshots

How it went

I used Cursor as both a build tool and a learning tool. While it wrote the code I asked it to explain every decision: why this component, why this structure. I was building a site and taking a coding course at the same time, on my own codebase, in real time.

The moment it clicked was opening the site on different devices and seeing every breakpoint and animation behave exactly as I'd designed them. No tool making decisions for me.

What it changed

I now understand what I'm actually asking developers to build, not in theory, but from experience. That changes how I design and how I collaborate.

Job search stack. The tools that read postings before I do.

cursor claude notion telegram

Job boards sent me around a hundred new postings a day. Most of them failed on something obvious at a glance, like a Dutch language requirement or a marketing role with a design title. Spotting it still meant opening every posting and reading until the problem showed up.

What I built

Three small tools that hand work to each other. A Telegram bot collects new openings and drops anything that breaks rules I wrote myself. A Chrome extension marks red and green flags directly on the posting page, so I know within seconds whether a role is worth reading properly. Whatever survives both goes into my Notion tracker through a Claude integration, with the company and the next step already filled in.

The result

Every application I send has passed my own criteria twice, and the tracker shows where each one stands without me updating it by hand.

Restock. The weekly menu that starts in my cabinets.

cursor claude

I was overspending on groceries and still throwing food away: the half-used jar at the back of the shelf, vegetables bought for a recipe I never got round to. On top of that, someone had to decide what to cook every single day, and that someone was me.

What I built

A tool that plans the week's cooking from what is on offer right now and what is already at home. It pulls current discounts from Albert Heijn through their API and adds Crisp's catalogue, which I scraped. I added everything in my cabinets by photographing the shelves. From all of that, Claude puts together a weekly menu and a shopping list with only what's missing.

The result

Every week I got a menu built around the deals, and far less food ended up in the bin. Deciding what to cook stopped being a daily job.