Grocery List
Visit ProductRole
Product owner
Type
Built with Kiro (AI-DLC)
Overview
A grocery list my partner and I use every day, built around the way we actually shop: items are organized by store and checked off as the trip goes on. Kiro wrote all of the code. I described what I wanted, followed the AI-DLC method by reviewing the requirements and tasks, and tested every flow end to end.
It supports multiple shopping locations such as supermarkets, markets, and home stores, while keeping the active list quick to scan and easy to update on a phone.
Multiple users can use it, with simple username-and-password sign-in through Supabase Auth. There's no public sign-up: I create each account in Supabase, each user sees only their own stores and items, and they stay signed in, so the list is ready whenever they open the app.
Features
A list for every store
The dashboard shows each store. Inside a store, add items quickly, check them off, edit them, or drag them into the order you walk the aisles.


Finish the trip
When you're done, finish the trip: carry selected unbought items over to the next trip, or clear the whole list and start fresh.

Data and sync
- •Sign in with Supabase to sync lists across devices, with Row Level Security keeping each user's data private
- •A backend-agnostic storage interface keeps the UI independent of where data is stored
- •Runs fully offline in local mode using IndexedDB when Supabase isn't configured
Automated tests
- •Property-based tests with fast-check for state, validation, storage, and ownership rules
- •Unit and component tests with Vitest and Testing Library
- •Playwright end-to-end user journeys, including offline rendering checks