The TuckBuddy app icon: a teal square with a light diamond and a dot at its center.

I Built and Shipped an iOS Home Inventory App in Under Four Months

I used a home-spun AI product crew to craft TuckBuddy, an app for tracking what we own across two homes.

Role
Founder, designer and product lead
Team
Me and seven AI bot-workers
Platform
iPhone, iOS 17.6 and later
Output
TuckBuddy 1.0, free with no item cap

Live on the App Store ↗

TuckBuddy 1.0 Home for Maple Street: a Last tucked card showing a Dutch oven, then the home's spaces.
01The need

I wanted to inventory my life, and I also needed to dive into vibe coding

I’d used ChatGPT to build a few web pages and micro apps, but never a full app. I hadn’t coded for many years and had never opened Xcode, so there was a steep learning curve.

This is primarily about the product. I created a separate case study on learning vibe coding if you’re interested in my approach.

02Process

I started as a designer, then scaled myself into a product team

I started with my own process: what problem am I solving, and what else is out there? Before screens, I ran a competitive analysis and read competitor reviews. The apps I found capped items and then forced a purchase, causing customer complaints of a bait and switch after hours of data entry. I also ran naming studies and a brand voice study, and drafted an App Store listing before the app existed to see if I could sell it in a few lines.

Competitive analysis: a positioning map with Tuck alone in the corner for one focused job for the people at home, then head-to-head cards against Sortly, Encircle and HomeZada.
Competitive analysis
Naming study: three plain-word name candidates, Cubby, Shelf and Tuck, each with an icon and notes.
Naming study
Brand voice study: phone screens showing how the word tuck carries through onboarding, the add flow and empty states.
Brand voice study

I was also missing my teammates, so I used Claude to sketch documents my partners would write, then made those roles permanent as my AI bot team. The working docs are at the end of this page.

03People

Who it’s for

A few real people with specific needs shaped the product.

  • The two-home couple

    Two households, still living in both

    When
    we’re combining two homes (eventually)
    I want
    to know which home a thing is in
    So I can
    stop buying duplicates

    Asks for: more than one home from day one, and search that shows the path

  • The co-manager

    Didn’t set any of it up

    When
    someone else built the inventory
    I want
    to find and add things without learning their system
    So I can
    track my stuff too

    Asks for: plain words, and nothing that depends on knowing the structure

  • The seasonal rotator

    A house and a storage unit

    When
    the season changes
    I want
    to know which bin holds the decorations
    So I can
    swap them without opening every box

    Asks for: boxes inside places, and moving a box moves everything in it

  • The collector

    Clothes and books

    When
    I add something I care about
    I want
    to capture the details that matter to me
    So I can
    find it by any of them later

    Asks for: many tags per item, values stored as written, and scan to add

  • The minimalist

    The other end of the spectrum

    When
    I add a shirt
    I want
    to type “shirt” and be done
    So I can
    skip the form

    Asks for: every detail optional, and details out of sight until asked for

04Scope

The scope

I wrote a laddered roadmap to cut the idea down. Each phase had to be complete even if I never got to the next one. The first phase was a free, private, single-user app: homes that hold spaces, spaces that hold spaces as deep as you like, items that go anywhere, and search that tells you where a thing is. Sync came next, and sharing after that. Then we got to work in slices.

05Look and feel

The feel

While revising product concepts and learning to code, I used Claude Design to explore looks: aquas and greens (my favorites), the lines of a topographic map to signal location awareness, and maybe a calm animation that followed your taps around the screen. That became the initial design direction. I auditioned seven directions in eleven days and came back to that one.

Audition round one: cool grays, a sky-blue accent and frosted glass on Home, Edit Item and Search.
Audition, round one
Three directions past the green: Terracotta, Vault and Blueprint versions of Home.
Terracotta, Vault and Blueprint
A dark isometric direction with glowing room cubes on Home, a location and an item.
Techy isometric
A halftone comic-book direction in cream, black and red on Home, a location and an item.
SF noir comic

Color came first. I explored warm and cool palettes, and several accent combinations on the same neutrals, before settling on deep-water neutrals with one teal.

Explored
  • Catalogue
  • Slate and Sky
  • Forest
  • Plum
  • Graphite and Coral
  • Ink and Amber
Chosen
  • Deep sea
  • Slate
  • Muted
  • Faded
  • Mist
  • Surface
  • Page
  • Teal accent

Deep-water neutrals and one teal. Blue, cyan and green appear only to tell the add options apart.

Under the interface sat a slow, drifting wash of light, like sunlight on the bottom of a pool. The motion is subtle at real speed, so this clip plays it faster.

Backdrop studies: aqua light, seafoam mesh and iridescent

I also explored small moments of delight that answered what you did: contour lines that follow your taps, a radar sweep that pings locations, or a wave that ripples as confirmation.

Contours that follow your taps
A radar sweep on save
A wave from the confirmation

It had three layers: a meditative backdrop at the bottom, the glass interface in the middle, and a delighter on top.

  1. DelighterRipples and contours that answer your taps.
  2. InterfaceGlass cards that stay crisp and readable.
  3. BackdropA soft aqua wash that drifts slowly underneath.

Tap the phone to stack or separate the layers.

The 1.0 release used mostly stock surfaces with teal accents and serif titles.

TuckBuddy 1.0 Home for Maple Street: a Last tucked card showing a Dutch oven, then the home's spaces.
Home
TuckBuddy 1.0 Search, mid-search for cam: four items, led by Camping lantern in Garage, Metro shelf, Blue bin, then Camping tent and Film camera.
Search, mid-search
TuckBuddy 1.0 item detail for Camping lantern: a full-bleed photo, the path Garage, Metro shelf, Blue bin, its details and tags, and Move, Edit and Add to List.
Item detail, with its path
06Accessibility

Accessibility

I knew early on that I wanted the app to be accessible from the start. In all my work streams, that got lost. The wake-up call came when my partner, who runs larger text, opened the app and it fell apart. Text truncated and clipped inside tiles that couldn’t grow, forms were obscured, and more. When I looked closer, most of the problems came from my custom look. The type was fixed, the custom tiles had fixed dimensions, and the custom navigation bars and sheets used white text on pale glass.

I took the app back to stock iOS, with limited teal accents and custom moments. My rule was that the app should feel modern on top of rock-solid accessibility. Stock controls support VoiceOver, Dynamic Type, Reduce Motion and contrast settings without extra work, so people using assistive technology don’t hit the problems my custom layer created. Tiles gracefully fall back to lists when space is limited.

Before launch, I ran Apple’s automated accessibility audit across the app, which flagged nearly 260 issues. Some included Apple’s own secondary gray failing contrast, touch targets under 44 points, and of course breaks on the largest text size. I fixed those, set the VoiceOver custom reading order on critical screens, and ensured animations fell back without penalty.

Home

DefaultLargerLargest Previous buildPrevious build, Home at the default size: Locations chips, Recently added and a Books carousel.Previous build, Home at a larger size: the Locations count wraps beside the heading and tile captions truncate.Previous build, Home at the largest size: the heading breaks as Loca-tions and tile captions shrink to The… and Dut…. 1.01.0 Home at the default size: Maple Street, the Books card as a shelf of spines, then Spaces.1.0 Home at a larger size: the Books card switches to a readable list of titles.1.0 Home at the largest size: the title, summary and book titles all wrap in full.

Item detail

DefaultLargerLargest Previous buildPrevious build, Dracula at the default size: path, details, tags, and Move beside Share.Previous build, Dracula at a larger size: detail chips grow but the title and path stay small.Previous build, Dracula at the largest size: chips truncate to Books &… and Bram St… and fill the screen. 1.01.0 Dracula at the default size: path, details, tags, and full-width Move and Edit.1.0 Dracula at a larger size: the title, path and buttons grow together.1.0 Dracula at the largest size: the title and path grow and the chips stay readable.
07Use cases

Going deep to find patterns

Three pieces mattered most. Onboarding had to help you start your collection, show how the app works and give you a moment of delight. The filing system had to let you build places that match your home, or your mental model of it. And adding a thing (or several) was the critical moment.

I prototyped specific cases, going deep in each and coming back up to see what they had in common. The goal was an app that works for many uses and is still very good for someone who uses it for one thing.

  • The first-time setupSome people rebuild their whole home in one sitting, so building places had to be quick. Others catalog one item and build the structure along the way, so the filing system had to stay out of their way.
  • The box of thingsSomeone emptying a box needs to enter many items at once, and items that are alike should share details like category, brand and tags.
  • The haulA shopper comes home with new clothes and wants to describe them in ways that are easy to enter and mean something to him.
  • The libraryA book collector scans their whole shelf in one sitting. Open book APIs fill in the details for them.
  • The seasonal moveThe decorator says he moved a box, or five, and the app keeps track of where they went.
Onboarding in 1.0
The spaces builder in 1.0, adding a dresser to a bedroom
The box of thingsAdd a Few, then the Move sheet
The libraryScanning ISBNs, one after another
The seasonal moveInto a bin, then the bin moves
Deleting a spaceKeep what’s inside, or send it to Trash
08Taxonomy

Categories, tags and details

I knew I’d never perfect a category system. I started thinking a category+subcategory hierarchy would be manageable with free tagging on top. Clothing > Shoes would get you most of the way, and someone could add “brogues” or “pumps” as tags, or stop at the category.

Hallway testing broke that. If I had subcategories, I needed many more: house shoes, slippers, flip-flops, sandals. Other people said picking from a fixed taxonomy—especially subcategories—took too long, and they couldn’t picture using an app that annoying.

So I changed the structure. I cut the categories from 22 to 11 primitives, each of which decides which details surface. Subcategories became suggested tags with category-specific collections. Garment, pattern and season are now tags you can stack, so one item can be formal and workwear and wool at the same time. Books kept one subcategory, the media type, because it powers the bookshelf.

The details and tags editors on a pair of boots

The result lets you go as shallow or as deep as you like. Some categories offer open tags only. Others offer suggested tags you can pick from, and adding your own is one step. A tag you add, e.g., Elastane, joins your tags for that category. The ones you’ve used most recently stay up front, and a one-off, e.g., Linen, fades away til you use it again.

Core details can change with the category (most have brand, color, condition and value; some add specifics: electronics have connectors, and clothing has size).

09Respecting the customer’s identity

Don’t go out of your way to alienate someone

I have gender expansive people in my life, and they shouldn’t have to pick a binary to manage their clothes. Most folks don’t notice, but for a marginalized group, this choice is meaningful and can be hurtful. Why would you do that? My clothing labels stay neutral, and size is just a field you fill in based on the label, without formatting.

The same reason is why onboarding asks for the name you use. Sharing is coming, and when you see who owns what or who moved something, you need a name. An iCloud account name, or a billing name later, may be a legal name and not what someone calls themselves. Nobody wants another app that feels awkward or hostile, and there are always other choices. I want them to choose mine and feel solid about it.

10Delight

“The Tuck”

The moment of delight became The Tuck. When you add an item, it tucks itself away. I first wanted it to fly into the exact place it lives, but since you can add anything to anywhere from anywhere, the place is often off screen. Instead, an item (its icon or your photo) playfully hops into the confirmation toast at the top of the screen, which also tells you where it landed. The hop gives a small and satisfying sense of completion, which matters in an app that can feel like a chore.

My engagement strategy set the limits around moments like this one. The app earns repeat use by helping you find things, with no streaks and no guilt.

The old confirmation: a small pill at the top reading Bed Spread is in the Bedroom.
Before: a text-only toast
After: The Tuck
11Outcome

Where it landed

In well under 4 months, I made a useful thing that reflects my values, gets real jobs done, and has a deep plan for moving forward into commercial territory. The process reminded me of my skills, and helped me grow with new tools.

My next build will add multi-user house sharing and syncing over CloudKit, explore healthy activation mechanics, and track signals to learn what gets built into the future. Maybe I will make a few bucks too, though I suspect a lot of the unique features you see here will end up in other apps, as I have opened up all of my planning docs here.

12Working docs

The working docs

These are the docs I made decisions against.

See more case studies →