Solo developer — app and backend
React Native, iOS and Android
API, auth and an admin console
Free — nothing is sold



A bakery closes with six loaves left. Someone cooks for eight and feeds three. A grocer has fruit that will not survive the weekend. All of it is edible, all of it is local, and almost all of it goes in the bin — not because nobody wants it, but because the people who do have no way of knowing it exists in the two hours it stays good.
FeedSeek is a React Native app for that window. Surplus goes up with a photo, a portion count and a pickup deadline; neighbours see what is free around them on a map, reserve a portion, and collect it with a code. Everything is given away — the app has no payments in it at all.
The constraint that shaped everything is that food expires. A listing is not an item for sale, it is a claim on a few hours — so a pickup deadline is required at creation, drives the sort order, and removes the listing when it passes. Without that the map silently fills with bread that went stale on Tuesday, and one wasted journey is enough to lose a user for good.
Reservations exist for the same reason. An open listing is a race, and a race means several people walk to the same bakery for one bag. Reserving holds a portion against a person for a bounded time and releases it if they do not show, which turns the whole thing from first-come-first-served into something you can plan around. The pickup code closes it: the giver sees a short code, the collector shows it, and neither has to swap a phone number or a surname to complete a handover between strangers.
Both sides live in one app rather than two. A bakery giving away bread in the evening is also someone who collects produce at the weekend, and splitting that in half would have doubled the install friction for no benefit. Chat is deliberately thin — threaded to a reservation, not a general inbox — because the only messages that matter are “I am five minutes away” and “the side door is open”.
Behind the app sits a backend doing the parts a phone should not: accounts and auth, listings and their expiry, reservation state, the chat threads, and an admin console for moderating what gets posted. A platform where strangers hand each other food cannot rely on good intentions alone — someone has to be able to pull a listing, and that is a server-side job, not a client one.
From opening the app to walking away with the food, with a reservation in the middle so the journey is never wasted.






The side that has to be frictionless, because the person posting is usually about to close up or go to bed.



A complete loop in one app: post in under a minute, find on a map, reserve, collect with a code. No payments, no accounts to exchange, and nothing that asks either side to do more than the moment allows.
The decision I would keep is making expiry a first-class field rather than metadata. It sorts the feed, empties the map and bounds the reservation, all from one value — and on a platform about food, a listing that cannot go stale is the difference between a useful map and a graveyard.