Flats-on apartment rental website

Apartment search and rental in France

A multilingual service for finding and booking apartments in Paris with a CRM back office

Project website flats-on.com

Task

launch in three languages before the 2024 Olympics

A new French long-term rental agency asked for a responsive web application for finding and booking apartments in Paris, with filtering by district and suburb. English, Russian and French had to be supported in the very first version.

The admin panel had to cover bookings, inventory, requests and the counterparty database, keep a history per apartment and per counterparty, generate a contract from a template as a PDF in one click, and work from a phone.

Solution

one code base for the site and the back office, SSR on Node.js

The server side is written from scratch in Node.js; the client and the admin panel share a UI component base built on our own Vue-based framework. SSR makes the site behave like a full application without page reloads, the language switches dynamically loading only the required modules, with lazy data loading, pagination and automatic image processing.

The back office works as a full CRM:

  • uploading and managing inventory, working with photos;
  • history of all website requests and enquiries, lead capture;
  • a counterparty database with interaction history;
  • a booking calendar per property;
  • contracts: automatic generation from a template and storage of the current state.

How it looks

screens:

Apartment search with district and date filtersHome page and an apartment cardBooking list and a request formTemplate-based contract and apartment availability calendarSearch request and counterparty history in the back office

Result

The project launched on a tight schedule before the Paris 2024 Summer Olympics and is supported on an ongoing basis.

100+

bookings in the first three months

200+

registered counterparties

100+

processed requests

3

languages in the first release

Thank you for reading

Want something similar? Tell us about your task and we will discuss how to solve it.

Contact us