
Zero Waste Store
The shopping app for ZeroWasteStore, a US retailer of plastic-free home, beauty and pet care goods — 200+ sustainable brands, browsable and buyable from a phone.
Also on Google Play, as ZeroWasteStore.
ZeroWasteStore sells plastic-free alternatives for the home, bathroom, beauty shelf and pet bowl — over 200 brands, every order carbon-neutral and packed in compostable or recyclable materials. The catalogue lived on Shopify and the website worked fine on a phone, but "works on a phone" and "is an app" are not the same promise. This is the app.
A store you can actually browse
The app opens on a merchandised Discover feed — banners, collection carousels and grids the store's team controls — rather than a flat product list. From there the catalogue behaves the way a shopper expects: browse by collection, drop into sub-categories, filter and sort, or search.
Product pages carry the full picture: image gallery with pinch-to-zoom, variants, price and availability, the long-form description the merchant writes in Shopify, and customer reviews with star ratings that shoppers can write themselves after buying.

Built for people who come back
Most of the app is about the second visit, not the first.
- ZWS Rewards — points balance, ways to earn, redemption, and giveaway entries, all in-app
- Wishlists — not one list but many: create, name, rename and group them, so a shopper can keep a "kitchen swaps" list apart from a gift registry
- Subscriptions — recurring deliveries of the things that run out, with the next shipment date, skip, reschedule, edit, cancel and reactivate handled from the account rather than by emailing support
- Orders — order history and a step-by-step tracker for anything currently in transit
- Account — profile, saved addresses, notification preferences, and push notifications for offers and order updates
Browsing never asks for an account. The moment a shopper reaches for something that needs one — a wishlist, a reward, an order — the app offers to log them in and puts them back where they were.
Checkout that stays the merchant's
Cart is native: quantities, promo codes, shipping insurance, live totals. Checkout hands off to Shopify's own hosted checkout, with the shopper carried across already signed in, so Apple Pay, Google Pay, Afterpay and card payments all run through the payment stack the store is already certified and reconciled on. When the order is placed, a deep link brings the shopper straight back to a confirmation screen in the app.
Addresses are validated and auto-completed as they are typed, US and international, which is the difference between a delivery and a support ticket.
How it's built
React Native and Expo, TypeScript throughout, one codebase for iPhone, iPad and Android with layouts that reflow for tablets.
The catalogue comes from Shopify's Storefront API over Apollo GraphQL with a persisted cache, so the app opens with content already on screen instead of a spinner. Where the Storefront API stops short — collection filters, product counts — the app calls small Liquid endpoints on the store itself. Around that core sit the services the shop actually runs on: search, reviews, wishlists, the rewards platform, subscription billing, address verification, Shopify Multipass for the signed-in checkout handoff, and OneSignal for push.
![]()
