Context
Built at 14x with the same setup as most of our apps: Claude Code, Swift, on-device ML, RevenueCat. Same thesis as Signature Maker: proven market, competitors making money, but every existing app in the category looked outdated and ugly. We wanted to build a premium version.
The Problem
Camera rolls grow endlessly. Duplicates from burst mode, blurry shots you forgot to delete, screenshots from 3 years ago, old memes. Storage fills up, and no one has time to scroll through 10,000 photos manually deciding what stays and what goes.
The apps that solve this already exist, but they all feel like utility software from 2018. Cluttered UIs, slow scanning, confusing flows.
The Solution
A "Tinder for your camera roll" experience. AI scans your library on-device, finds the junk (duplicates, blurry shots, screenshots, similar photos), and presents them in a swipe interface. Left to delete, right to keep.

- On-device ML for duplicate detection and blur scoring
- Similar photo grouping with side-by-side comparison
- Video compression (up to 80% reduction)
- Photo compression via HEIC conversion
- Bulk deletion with one tap
- 100% on-device, no cloud, no account

The hardest technical challenge was handling large photo libraries without creating hangups. Scanning thousands of photos with ML models while keeping the UI smooth required careful caching, background processing, and memory management.

Outcomes
Revenue-wise, Cura only generated about €10 in sales. ASO alone didn't move the needle here, unlike Signature Maker which grew organically from day one.
The difference is clear in hindsight: signing a PDF is an urgent, immediate pain point. People search for it actively. Cleaning your photo library is a "nice to have" that people procrastinate on forever. The intent behind the search is fundamentally weaker.
Learnings
- "Nice to have" apps need marketing. If your app solves a problem people procrastinate on, ASO alone won't work. You need content, ads, or some external push.
- On-device ML is production-ready. Core ML handled thousands of photos with solid accuracy. The bottleneck wasn't the ML, it was the surrounding infrastructure: caching, memory, state management, UI smoothness.
Timeline
Mar 2026 - 3 days
Stack
Responsibilities
- Technical architecture
- On-device ML pipeline (duplicate detection, blur scoring)
- Performance optimization (large photo libraries)
- State management & persistence layer
