The problem
I started thinking about Topos after moving to Singapore and finding it surprisingly hard to choose an area to live in. Rental sites were good at showing individual listings, but they did not explain what daily life in each neighborhood would feel like. Useful information was scattered across Reddit threads, blog posts, maps, and word of mouth. In the end, it was easy to pick a listing and simply hope the surrounding area was pleasant and the commute was manageable.
I wanted to start with the person rather than the property. Someone new to a city should be able to describe their budget, commute, and the kind of neighborhood they enjoy, then get a clear shortlist of areas worth researching.
What I built
The current version brings neighborhood information into a visual map, individual area profiles, and a comparison view. A user profile captures preferences such as access to work, transport, walkability, nearby activity, and cost. Topos then turns those signals into an understandable score and recommendation instead of presenting another undifferentiated list of apartments.
The original idea went further into geospatial machine learning. I explored using OpenStreetMap street networks, intersection density, circuity, and graph features to find relationships that ordinary neighborhood averages miss. The product has since moved away from much of that work and is currently closer to an information aggregator with a visual scoring layer. I am keeping the more ambitious ML direction as a future possibility, not presenting it as something the current version already delivers.
Decisions and tradeoffs
Start with the neighborhood
Rental sites usually begin with an available unit. Topos begins with the area around it because the commute, transport, streets, and nearby places shape everyday life long after the listing has disappeared.
A personal score, not one best area
A neighborhood cannot be ranked in isolation. A quiet area far from nightlife may be perfect for one person and a poor fit for another, so recommendations need to reflect an individual profile.
Keep the score explainable
The interface shows the signals behind a recommendation and supports direct comparison. If the product cannot explain why an area fits, a precise-looking score does not offer much more confidence than guessing from a listing.
Result
Topos currently demonstrates the main research experience: scan areas on a map, open a neighborhood profile, compare several places, and see how each one fits a set of preferences. Development is paused while I work on other projects. If I return to it, the next challenge will be rebuilding the data and recommendation layer carefully enough that the score is useful and explainable, rather than just looking precise.