Inspiration

Bin Collection Reminder was inspired by a very normal but surprisingly annoying problem: remembering which bin goes out, on which day, and for which address.

Council collection schedules are often inconsistent, hard to find, or depend on postcode, street, building number, and local rules. We wanted to build an app that makes this simple for households: find your schedule, customise your bins, and get reminded before collection day.

What it does

Bin Collection Reminder helps users find, create, and manage household bin collection schedules.

Users can search by country, postcode, and address, choose from suggested community or system collections, or manually create their own schedule. The app supports multiple bins, colours, recurrence rules, collection badges, local reminders, remote notifications for premium users, and subscription-aware limits.

It also supports fallback manual address entry for countries where no address lookup provider is available yet.

How we built it

The iOS app is built with Swift and SwiftUI.

The backend is a Node.js API running on Kubernetes, with Firebase Firestore for persistent data, Redis for caching, and Firebase/APNs for push notifications. Address lookup is handled through a separate AnyLookup service so the app does not expose provider tokens directly.

RevenueCat is used for subscriptions, and frontend/backend configuration is shared so plan limits, validation, localisation, supported countries, and feature gates stay aligned.

Challenges we ran into

The hardest parts were the real-world edge cases.

Some postcodes can have multiple collection schedules depending on street or building number. Different countries have different address formats. Users can be offline, subscriptions can expire, backend sync can fail, and notifications should only be scheduled once the backend definitely has the matching collection.

A lot of work went into making the app recover cleanly from those states without confusing the user.

Accomplishments that we're proud of

We built a working iOS app with address lookup, manual fallback, configurable country support, suggested collections, custom bin schedules, subscription handling, and notification sync.

We are especially proud of the configuration system, which keeps frontend and backend behaviour aligned, and the fallback flows that let users still create schedules even when an address provider is not available.

What we learned

We learned that a “simple reminder app” becomes complex when it has to work reliably with real addresses, real council data, offline use, subscriptions, and notifications.

We also learned that small UX details matter: field labels, validation messages, paywall defaults, and sync warnings can make the difference between a user understanding the app and getting stuck.

What's next for Bin Collection Reminder

Next we want to expand address lookup coverage, improve imported council schedule data, make community suggested collections more useful, and continue polishing the app for public App Store release.

Share this project:

Updates