Inspiration

The idea for CanAfford was born out of the sheer exhaustion of being a student at McMaster University and trying to navigate the Ontario housing market. We realized that moving is a massive "information gamble". When you look for a home, the data you need to make a safe, smart decision is scattered across dozens of disconnected tabs. One site has the rent, another has the bus schedules, a third has crime stats or safety ratings, and none of them tell you the local cost of living for that specific block. We were tired of the "sticker shock" and the genuine anxiety that comes with moving into an unfamiliar neighborhood without knowing if you can truly afford or even like the life you're about to start there. We built CanAfford to be a single, trusted source of truth. We combined live market inventory with deep neighborhood research factoring in everything from transit accessibility and grocery costs to localized safety metrics and legal lease audits. It’s the app we wish we had: one place that handles all the research so you can move with confidence instead of a leap of faith.

What it does

CanAfford calculates the true cost of living in Canada by factoring in 2026 transit passes, grocery inflation, and commute distances, then goes further by auditing your lease for illegal clauses and generating real-time neighborhood intelligence. This is the app that turns renters from victims of hidden costs into informed, protected tenants.

How we built it

We built CanAfford using TypeScript & React for the frontend, Node.js and Express for the backend, Google Antigravity as our AI coding agent, Google Gemini for AI-powered analysis, Leaflet.js for interactive maps, Auth0 for authentication, Backboard API to store and manage user context and preferences, ElevenLabs for voice capabilities, CSS and JavaScript for styling and functionality.

Challenges we ran into

One of the biggest challenges we had encountered were the numerous inaccuracies regarding the listings suggested by the AI. Gemini often returned locations that were either too far from the user’s desired area, descriptions that were surface-level at best, or listings that didn’t realistically match affordability constraints. This forced us to spend a significant amount of time refining prompts, filtering responses, and implementing additional validation logic to ensure the recommendations were actually useful. Another challenge was balancing the different data sources we relied on such as housing prices, commute distances, and estimated living costs so that the “true cost” calculations remained consistent and realistic. Integrating these pieces while keeping the app responsive and user-friendly required a lot of iteration and debugging.

Accomplishments that we're proud of

We’re proud that we were able to turn a complex problem of figuring out whether someone can truly afford a rental into a simple and interactive tool. Instead of just showing rent prices, our app calculates the true cost of living by incorporating factors like commute distance, transit costs, and everyday expenses. We’re also proud of successfully integrating AI to help analyze listings and provide insights to renters. Despite the challenges with accuracy, we managed to build a system that meaningfully assists users in evaluating housing options rather than just browsing listings. Finally, we’re proud that we built a functional end-to-end prototype within a short time frame. Seeing the idea evolve from a concept into a working application that could realistically help renters make better decisions was a huge accomplishment for our team.

What we learned

Building this in 36 hours was a massive reality check. We realized that just having a list of apartments isn't enough; you need the full picture to actually make a decision. We spent a lot of time figuring out how to pull together totally different types of information (like bus schedules, the price of milk, and monthly rent) and turn them into one "True Cost" number that actually makes sense. We also learned that an app is way more helpful when it has a "memory." By using the Backboard API, we saw how the platform could actually learn our habits and evolve with us instead of just feeling like a static search bar. Finally, we learned that if you want an AI to do something heavy, like audit a 10-page lease, you need a solid backend like Vultr to keep things fast and responsive.

What's next for CanAfford

We’ve got the basics down, but we’re just getting started. The next big move is to let roommates sync their Backboard profiles so the app can find a place that works for everyone’s budget and commute at the same time. We also want to add better verification tools to help people spot rental scams before they lose money. On top of that, we're planning a "Maintenance Log" where you can snap photos of issues in your apartment to keep a timestamped paper trail for your own protection. We started this because of our own struggles at McMaster, but we want to expand our data so we can help students in every city across Canada.

Built With

Share this project:

Updates