SHIPPEDapp

collect.

An iOS cataloguing app for collectibles — comics, vinyl, cards — with vaults, a square-only camera, and a landscape cover-flow browser that exists purely because a collection deserves to be looked at.

CREATED JUN 6, 2025 · UPDATED SEP 21, 2026

PROBLEM

Every collectible tracker assumes it knows what you collect. Pick one and you inherit its taxonomy, its fields, and its opinion about which of your things are worth a photo.

HYPOTHESIS

If categories, conditions and per-category fields are user-owned data rather than an enum, one app covers every collection — and the cover art, not the row, should be the thing you browse.

ARCHITECTURE

Core Data backed by CloudKit, local-first. Every filtered surface — favourites, wishlist, archive, trash, the two vaults — is a thin wrapper over one list view, so a fix lands everywhere at once. Three browsing modes share it, including a landscape cover-flow with reflections and an iPod-style inner-edge pivot that you enter by rotating the phone. Image capture is a custom AVFoundation camera with a live 1:1 viewfinder, because a square crop applied after the fact is a square crop that cuts off the logo. Every save goes through a checked helper that logs failures rather than swallowing them.

STACK

SwiftSwiftUICore DataCloudKitAVFoundation

RESULT

Shipped, in use, and in public beta on TestFlight at 1.1.22. September cleared the App Store submission blockers, moved search and add into a Notes-style bottom bar, covered the app switcher with a dedicated window, and fixed iCloud sync splitting across CloudKit environments. Import and export handle both the fourteen-column legacy CSV and the current sixteen, with formula-injection protection on the way out.

LEARNINGS

  • One list view behind five filtered screens is the difference between fixing a bug and fixing it five times.
  • A camera that can only take the shape you need beats a camera plus a crop step.
  • Sample data has to be reversible or nobody will risk turning it on.

PROVENANCE

Roughly 90% Claude Code, 7% Codex on audit and bug-fix passes, 3% human — direction, testing on a physical iPhone, and the merge button.

TAGS

iosswiftuicloudkitcollecting