The Challenge
Reading apps got weird. Goodreads turned into a social network nobody asked for. Every alternative wanted to gamify your habits — streaks, leaderboards, badges for finishing a chapter. We wanted to sit down with a book, log a thought, and move on. Nothing on the App Store did that without noise. So we built it.
Our Approach
We went native SwiftUI from day one. No cross-platform framework, no shortcuts. One developer, seven months from concept to App Store. CloudKit handles sync without us ever touching user data. The backend runs NestJS on Railway behind Cloudflare, with PostgreSQL for persistence and Redis for caching and rate limiting. A custom book data crawling cron fills in editions and series metadata — that took several iterations to get right. When iOS 26 dropped mid-development, adapting the app required significant rework that's still ongoing. Every decision came back to the same question: does this respect the reader's time?
The Results
500
Downloads in 3 months
1,345
Reflections saved
1
Developer, 6 releases shipped
Why we built this
We read a lot. And every app we tried made reading feel like a job.
Goodreads is bloated. The alternatives gamify everything into streaks and leaderboards. We didn’t want to compete with ourselves. We wanted a place to track what we read, capture the quotes that stuck, and write down what a book made us think. Quiet. Private. Fast.
Kiveo is that place. The name comes from “kivi” — Finnish and Estonian for stone. Stillness. Permanence. A reading journal that stays out of the way.
What it does
Kiveo is a native iOS reading journal and book tracker. Every feature exists because a reader needed it, not because a growth metric demanded it.
Track your reading. Customizable shelves — reading, waiting, finished. Add books by scanning a barcode or entering them manually. Import your entire Goodreads library, including shelves and reading history.
Capture what matters. Save quotes and passages with personal reflections attached. 311 quotes saved and 1,345 reflections written by real readers in three months — that’s the engagement metric we care about.
Time your sessions. A live reading session timer with Lock Screen integration. 470 reading sessions logged so far. No streaks. No guilt.
See your patterns. Reading statistics filtered by year. Shareable cards with customizable themes when you want to post a finished book.
Own your data. iCloud sync across iPhone and iPad. Full data export. No third-party analytics collecting your reading habits. No ads. TelemetryDeck handles anonymous, privacy-respecting usage data — nothing more.
The numbers
Three months after launch. All real.
- 500 downloads
- 693 books added to libraries
- 470 reading sessions logged
- 311 quotes saved
- 1,345 reflections written
- ~70 average monthly active users
- 6 releases shipped since December 2025
The App Store shows 5 stars in search results. We’re at 4.2 internally in App Store Connect. No public written reviews yet — the app is still young.
How it’s built
iOS: Swift and SwiftUI. Core Data for local persistence. CloudKit for sync. StoreKit for the upcoming one-time purchase tier.
Backend: NestJS running on Railway, PostgreSQL for the database, Redis for caching and rate limiting. A book data crawling cron job fills in editions and series metadata automatically — getting that accurate took several iterations.
Infrastructure: Hosted behind Cloudflare. TelemetryDeck for anonymous analytics.
What’s next: Widgets and an Apple Watch companion app are on the 2026 roadmap. A subscription tier will come later for cross-platform sync and infrastructure-heavy features — but only when it actually makes sense to charge for one.
The business model
Everything in Kiveo today is free. Tracking, reflections, quotes, shelves — unlimited, free forever.
A one-time purchase is coming for advanced features. A subscription will follow later for things that cost us real infrastructure money, like cross-platform sync. We’re not going to charge monthly for features that run on your device.
What we learned
Building a product for yourself is clarifying. Every feature decision had a simple filter: would this make reading better or worse? Streaks make reading worse. Leaderboards make reading worse. A quiet place to write down what a book made you feel — that makes reading better.
One developer shipped this in seven months. Six updates in three months post-launch. The pace matters more than the headcount.
Built With
Frequently Asked Questions
Can one developer build and ship an iOS app?
Yes. Kiveo was built solo in 7 months using SwiftUI and CloudKit. It shipped to the App Store with 500 downloads and zero backend scaling issues.
How does CloudKit handle data sync for iOS apps?
CloudKit syncs user data across devices through iCloud with no extra server infrastructure. Kiveo uses it to sync reading journals, reflections, and session logs without a custom sync engine.
How do you build a privacy-first iOS app without third-party analytics?
Kiveo uses TelemetryDeck for anonymous, GDPR-compliant telemetry. No third-party SDKs scraping user data. Users logged 470 sessions and 1,345 reflections with full privacy intact.
Have a project like this?
Tell us what you're working on. We respond within 24 hours.