Inspiration

Finding roommates in college is only the beginning. Finding a home everyone likes—and figuring out what each person should pay—is where things get complicated.

One roommate wants a private bathroom. Another needs the cheapest room. Someone prioritizes space, while someone else cares about location. Apartment links pile up in the group chat, and every promising option starts another conversation about compromises.

We created FairRoom to turn those separate priorities into a shared decision.

What it does

FairRoom brings roommate preferences, housing recommendations, and rent conversations into one workspace.

Roommates enter their budgets, bedroom preferences, and desired amenities. FairRoom compares those requirements against a catalog of 209 saved real rental listings around Cambridge and nearby communities, then presents five homes at a time.

Each recommendation includes property photos, asking rent, and a link to the original listing. Roommates can bookmark favorites, explore another set of homes, and review a suggested budget-proportional rent split.

Different budgets. Different wish lists. One shared path home.

How we built it

We built FairRoom’s interface with React, TypeScript, and Vite, with Node.js and Express supporting the application backend. We used Codex to accelerate implementation, debug integration issues, and verify the experience through automated tests and browser checks.

The matching engine separates hard requirements from preferences. Budget and bedroom constraints determine which homes qualify; ranking rules help organize the remaining options. This keeps affordability checks predictable and recommendations understandable.

We also built adapters for Photon, Chalk, and Factory’s Droid SDK, giving communication, model access, and listing research distinct responsibilities. We successfully tested direct-message delivery through Photon.

Our production architecture extends that foundation:

  • Photon connects messaging channels to FairRoom’s API through incoming events and outgoing replies.
  • Chalk provides the environment for training and evaluating a group-aware preference model. The design learns from comparisons between eligible homes while keeping affordability constraints explicit.
  • Factory Droid SDK provides a tool-driven listing-research workflow for gathering and reviewing evidence.
  • Supabase provides the proposed shared identity, database, and storage layer.
  • Hugging Face models provide a path toward extracting structured features from listing documents and floor plans.
  • Vercel hosts the web experience, with GitHub supporting version control and deployment workflows.

The architectural goal is to keep the experience simple for roommates while giving each service a focused job behind the scenes.

Challenges we faced

Defining fairness

An equal split is easy to calculate, but roommates have different budgets and bedrooms are rarely equivalent.

We implemented a transparent, budget-proportional starting point. It gives roommates something concrete to discuss while leaving room for adjustments based on verified room characteristics and mutual agreement.

Reconciling competing preferences

A home can look perfect to two roommates and be unsuitable for the third. That shaped our approach to group-aware ranking: finding a workable compromise matters more than maximizing an average score.

Working with incomplete housing data

Listings vary in completeness. Bathroom counts do not identify private bathrooms, and photos do not establish reliable room dimensions. We learned to preserve the distinction between known facts and details that need confirmation.

Making communication reliable

Messaging requires more than sending a successful API request. Participant identity, duplicate handling, delivery status, and conversation context all matter when an agent participates in a real housing search.

What we learned

Housing is a coordination problem as much as a search problem.

More listings do not necessarily make the decision easier. A useful product helps people understand their options, see the financial trade-offs, and move forward together.

We also learned that reliable calculations and clear explanations are essential foundations for AI-assisted recommendations. Intelligence should help people make a decision—not make the reasoning harder to understand.

Our vision

FairRoom’s vision is a housing assistant that stays with the group from its first wish lists to its final shortlist: understanding preferences, explaining compromises, and helping roommates find a home they can afford together.

Built With

Share this project:

Updates

Submission history