The brief
Listing boards and social media groups deal in square metres. About what actually breaks a flatshare, the daily rhythm, guests, cleaning and noise, there is not a line. We wanted to build a search that starts with those things.
- Show the person before the floor plan
- Stop language from deciding who replies to whom
- Ship on iOS and Android at once, with a small team
- Build the operation so growth does not mean rebuilding the foundations
What we built
One codebase, two app stores
The app runs on React Native and Expo, so the iOS and Android versions were built at the same time and are maintained together. They launched the same day on the App Store and Google Play.
Why this way. A small team cannot do everything twice. This decision is about whether the project ships at all, not about a favourite technology.
Matching on how someone actually lives
Instead of filtering by price and layout, a user says what bothers them about sharing: early bird or night owl, smoking, guests, cleaning, quiet on weeknights. The app then shows only profiles with a high match, and says how high for each of them.
Why this way. Price and layout you can find anywhere. What breaks a flatshare after a month, nowhere.

Four steps from profile to moving in
A profile in two minutes, matches, chat and moving in. The whole path is visible on the website before anyone downloads the app.
Why this way. People who do not know what waits after installing will not install. The steps belong before the download, not after it.

Rumi, an assistant inside the app
The built-in assistant finds active flatmates, picks suitable rooms, translates a profile and suggests how to reply. It is available around the clock, in the language the user writes in.
Why this way. Most people freeze at the first message. Rumi drafts it for them, so the conversation happens at all.

A chat that handles the language barrier
Messages and profiles are translated automatically, and translated text always shows that it is a translation and from which language. The interface handles six languages, including Ukrainian and Vietnamese.
Why this way. Prague is linguistically mixed and flatmates often do not share a mother tongue. Without translation they simply never write to each other.
A Go backend, not whatever was at hand
The server runs on Go and PostgreSQL. Profile matching, chat and notifications are traffic where every query counts.
Why this way. Go keeps memory use and latency low. Cheap to run now means growth will not mean a rebuild.
The website as the way into the app
The landing page explains why the usual search does not work, shows user stories and points to the app stores. It also carries a section for landlords, a blog and an FAQ.
Why this way. Nobody downloads an app from an ad. They download it after reading somewhere why it has not worked so far.

The outcome
The app has been in both stores since May 2026 and is used by more than six hundred people looking for a flatmate in Prague. Having our own product also means we test on ourselves what we later build for clients: the mobile app, the backend and the website.
- iOS and Android from one codebase, released on the same day
- Six interface languages, including Ukrainian and Vietnamese
- Automatic translation of messages and profiles inside the chat
- Rumi, an in-app assistant, available around the clock
- Mobile app
- React Native, Expo, iOS 15.1+ and Android
- Backend
- Go, PostgreSQL
- Chat and translation
- Automatic translation of messages and profiles across six languages
- Assistant
- Rumi, an AI assistant inside the app
- Website
- Landing page, blog, section for landlords
- Operations
- Our own server, Caddy and nginx, HTTPS
- Distribution
- App Store and Google Play, published by Rozenfeld Group s.r.o.
When this makes sense for you too
The industry does not matter. The same approach fits anywhere at least two of these three sentences are true:
- The product has to run on iOS and Android, but the team is small
- Your users each speak a different language
- You want to see how we build before handing us your own project
Want something similar?
Tell us what the site has to do. In half an hour we settle the scope and the timing, and only then you get a price that does not change afterwards.
Arrange a consultation

