Inspiration

Living with roommates means constantly keeping track of small things: who bought groceries, whose turn it is to take out the trash, when rent is due, and whether everyone saw an important message. That information usually ends up scattered across group chats, notes, payment apps, and spreadsheets.

We built Nest because we wanted one shared place where roommates could organize their home without making everyday life feel like another job.

## What it does

Nest connects roommates through one shared digital home. A person can create a Nest, invite their roommates with a code or link, and immediately start sharing information.

Inside a Nest, roommates can:

  • Create and assign chores
  • Build a shared grocery list
  • Post household announcements
  • Track expenses and roommate balances
  • Organize calendar events
  • Keep shared household notes
  • View everyone currently in the Nest

Updates are shared across the entire household, so when one roommate adds groceries, completes a chore, or posts an announcement, everyone else sees it too. Nest keeps each household’s information private and separate from other Nests.

## How we built it

We built Nest as a cross-platform app using Expo, React Native, TypeScript, and Expo Router. This allowed us to develop one experience that works on both mobile devices and the web.

Supabase powers our authentication, PostgreSQL database, and real-time updates. We used database security policies to ensure users can only access information belonging to their own Nest. We also created SQL functions for sensitive actions such as joining a Nest, removing members, transferring admin access, and updating payment records.

We connected the frontend to Supabase through reusable hooks and providers so every tab reads from the same shared data instead of relying on hard-coded examples or information stored on only one device.

## Challenges we ran into

Our biggest challenge was making everything truly shared. It was easy to make a grocery list or chore appear on one screen, but much harder to ensure that every roommate saw the same information immediately and securely.

Authentication also gave us several surprises. We worked through email delivery limits, custom SMTP settings, expired sign-in links, redirects, and differences between web and mobile behavior.

Because we were working as a team, merging multiple branches became another major challenge. Several of us were editing the same navigation, authentication, and package files. We had to carefully resolve conflicts without removing each other’s work.

We also encountered smaller but important cross-platform issues. Something that worked perfectly on a phone—such as confirmation dialogs or dismissing the keyboard—did not always behave the same way in a browser. Solving those problems taught us to test every important flow on both platforms.

## Accomplishments that we're proud of

We are especially proud that Nest became more than a collection of screens. Roommates can create a real shared space, join it from separate accounts, and see synchronized household information.

We also built several details that made the app feel complete:

  • Secure separation between different Nests
  • Real-time shared chores, groceries, announcements, expenses, and notes
  • Automatic admin promotion when the current admin leaves
  • Automatic cleanup when the final member leaves a Nest
  • Duplicate-membership protection
  • Invite regeneration and member management
  • A responsive experience across mobile and web

Getting authentication, database security, real-time updates, and team collaboration working together was one of our biggest accomplishments.

## What we learned

We learned that building a collaborative app is not just about saving data. You also have to think carefully about who can read it, who can change it, what happens when multiple people update it, and how the app responds when someone joins or leaves a group.

We became much more comfortable with Supabase, row-level security, SQL migrations, real-time subscriptions, React Native, and cross-platform development. We also learned how important Git discipline is when several people are building connected features at the same time.

Most importantly, we learned that small user-experience details matter. A broken confirmation dialog, confusing sign-in email, or keyboard that refuses to close can make an otherwise working feature feel unusable.

## What's next for Nest

Our next step is to make Nest feel even more helpful without making it complicated. We would like to add smarter reminders for chores, groceries, bills, and upcoming events.

We also want to improve expense settlement by making Venmo and Zelle handoffs easier while clearly communicating that Nest tracks payments rather than processing them directly. Other future improvements include push notifications, recurring bills, richer file sharing, offline support, household activity history, and more personalization.

Our long-term goal is for Nest to become the first place roommates check when they need to know what is happening at home.

Built With

Share this project:

Updates

Submission history