Inspiration
Made For Us started with my own wedding.
Two years ago, while preparing for it, someone offered to build us a customizable wedding app for around €400. At the time, I thought: I can probably build a website myself. So I refused.
One year later, I did exactly that. I built the website.
Then, about two weeks before our wedding in July, I decided the website was not enough anymore and started turning it into a real mobile app.
My wife and I have families from different countries, speaking different languages, so one of the main goals was to make communication easier for everyone. I wanted our guests to have one place with the invitation, schedule, updates, photos and everything happening around the wedding.
More than anything, I didn't want them to miss anything.
The app worked much better than I expected. People actually used it throughout the wedding, shared their own photos and perspectives, commented on each other's posts, and kept checking what was happening.
Our family and friends loved it.
That was when I realized I did not want the project to stop with our wedding.
I participated in the RevenueCat Shipaton last year, so this year's edition felt like the perfect excuse to take this very personal project, rebuild the parts that had been rushed, and turn it into something other people could use too.
What it does
Made For Us lets people create a private app for their event and invite their guests into it.
The original experience was built around weddings, but the idea works for many kinds of events.
The app brings practical information and the social side of the event together in one place. Guests can see the schedule, receive updates, access important information and follow what is happening before, during and after the event.
The biggest part of the original app was the private social network.
Guests could publish posts, photos and comments from their own perspective. Posts and comments could be automatically translated with GPT-5 nano, which was especially useful for our two families.
I also built a real-time chat with streaming messages and direct translations, so people who did not speak the same language could still talk to each other easily.
The idea is simple: keep everyone informed, included and connected, while giving the event its own private digital space.
Before the event, guests know what is happening.
During it, they can follow updates and share what they are experiencing.
Afterwards, all those different perspectives and memories stay together in one place.
How we built it
Made For Us started as something built very quickly for one specific wedding, so turning it into a real product required quite a lot of rebuilding.
The mobile app is built with React Native and Expo, with Supabase as the backend.
Supabase handles the database, authentication, storage and much of the security model. Row Level Security is especially important because every event needs to remain completely isolated from every other event.
The app also uses AI for automatic translations of user-generated content, including posts, comments and chat messages.
For the commercial version, I also needed to connect several pieces that had never been part of the original wedding app: RevenueCat, App Store purchases, Stripe, EAS builds, GitHub CI and the production infrastructure around Supabase.
A large part of the work was therefore not about adding visible features. It was about transforming something that worked for one wedding into something that could safely work for many different events.
Challenges we ran into
The backend was by far the hardest part.
The first version only needed to work for my own wedding. The new version needed proper event isolation, permissions, roles, secure storage, invitations, RPCs, tests and strong RLS policies.
I initially tried to let ChatGPT 5.6 Sol handle a large part of that architecture.
That did not go particularly well.
It spent a lot of time and tokens creating something much more complicated than the product actually needed. The architecture became increasingly over-engineered, and I eventually had to stop, reduce the scope and simplify large parts of it.
The challenge became less about adding more and more functionality and more about deciding what the system actually needed.
I had to make the architecture smaller, easier to reason about and, most importantly, robust.
Another challenge was taking an app designed around one very specific event and removing all the assumptions that only made sense for my own wedding.
That meant separating the product from the original use case without losing what made the original experience work.
Accomplishments that we're proud of
The biggest accomplishment is probably that the original version was not just a prototype.
Real people actually used it during our wedding.
Guests shared photos, posted updates, commented and interacted with people they could not always communicate with easily in person because of the language barrier.
Seeing people genuinely use something I had built two weeks before the wedding was a very different feeling from simply seeing a feature work on my phone.
I am also proud of turning that first version into something much more solid.
The new backend has proper access control, Row Level Security, automated pgTAP tests and a much cleaner separation between events.
I am especially happy that I resisted the temptation to keep adding complexity and instead went back to simplify the architecture.
Made For Us is now much closer to the product I originally wanted: something that feels simple for the people using it, even though there is quite a lot happening underneath.
What we learned
The first thing I learned is that building something for yourself is very different from building something other people can trust.
For my wedding, "it works" was enough.
For a real product, I needed to think about security, data isolation, permissions, failure cases, payments, storage limits, deployment and all the situations that never happen in a controlled test environment.
I also learned that AI-generated code still needs a lot of engineering judgment.
The hardest part was often not generating code. It was knowing when the proposed solution was unnecessarily complicated, when an abstraction was solving a problem I did not actually have, and when it was better to delete something and start again with a simpler approach.
The original wedding app also taught me something about the product itself.
What people liked most was not simply having their schedule inside an app.
They liked having a shared private space around the event.
They could see moments they had missed, discover photos taken by other guests, interact across language barriers and experience the wedding from perspectives other than their own.
That became the real direction for Made For Us.
What's next for Made For Us
The immediate goal is to release it.
There is still work to do around the production purchase flow, App Store integration, RevenueCat, Stripe, EAS, GitHub CI and the final production setup.
I also want to continue improving the customization system so each event can feel genuinely different rather than looking like the same app with another color palette.
After that, the focus will move toward real users.
I want to see how other couples and event organizers use Made For Us, what they care about, what they ignore and which parts of the original wedding experience translate well to completely different events.
Made For Us started as an app for one wedding: mine.
The goal now is to turn it into a private space where people can experience, share and remember all kinds of events together — and make sure nobody misses what is happening around them.
Built With
- chatgpt
- codex
- eas
- edge-function
- expo.io
- github
- react
- react-native
- sol
- supabase
Log in or sign up for Devpost to join the conversation.