RentCar Baku — a luxury car rental platform

A three-language Next.js platform for premium car rental. Filtering by brand, class and daily budget, full specs on every car, and a booking flow that finishes in WhatsApp.

Visit live site
Overview
Client
A self-initiated demo — not a client commission. Built as a production-ready platform for the Baku car rental market.
Role
Every stage of the project: concept, data model, interface design, frontend development, multilingual structure and deployment.
Stack
Next.js · TypeScript · Tailwind CSS
Date
November 2025
Languages
3 — AZ / EN / RU
Pages
6 × 3
Lighthouse (mobile)
94
Lighthouse (desktop)
100
The problem

Luxury car rental in Baku runs almost entirely through Instagram and WhatsApp. To find out which car is available, what it costs per day and what it is capable of, the customer has to start a conversation — which means talking to a person before making any decision at all. That eats the agency’s time and loses most of the people who are simply comparing prices. The question behind this build was straightforward: can everything that happens before the conversation happen on the site instead?

What the site includes
  • Three languages on separate routes: /az, /en, /ru — each language is an independent page for search engines
  • A quick search panel: brand (Mercedes-Benz, Porsche, BMW, Rolls-Royce, Lamborghini, Bentley, Range Rover, Ferrari), class (SUV, Sport, Business, Luxury) and daily budget band
  • A fleet catalogue — every card carries the daily price, top speed and horsepower
  • Dedicated pages: cars, services, blog, about, contact
  • Fleet classes: SUV, Sport, Business Sport, Ultra Luxury, Business, Supercar
  • A three-step rental flow: choose the car, confirm the order, the car comes to your door
  • A premium services section: full insurance, VIP delivery, 24/7 concierge, detailing, corporate package
  • A blog section with dated articles
  • Frequently asked questions in an accordion: documents, deposit, drop-off, insurance cover
  • Direct ordering through WhatsApp
Technical decisions
01

The filter is the front door

Someone renting a car does not arrive to browse; they arrive with a specific intent — an SUV, up to 500 AZN a day. So the filter panel sits directly below the first screen rather than buried inside the catalogue. Its three questions — brand, class, budget — are the three axes the real decision is made on; everything else follows from those three answers.

02

Every car carries its spec sheet

In luxury rental the price alone is not enough; the buyer also looks at horsepower and top speed. Putting those two numbers on the card itself removes the need to open a detail page — the comparison happens directly in the catalogue, on one screen. Fewer clicks, faster decision.

03

The booking ends in WhatsApp, not on the site

In this market the deal closes in conversation: dates shift, deposits get negotiated, corporate discounts are agreed. So I deliberately did not build a payment integration — it would have been complexity nobody used. The site does its own job: the choice and the price become clear, and the conversation continues in an app the customer already has open.

04

Three languages at the routing level, not behind a button

A site that switches language only in JavaScript is a single page as far as search engines are concerned — it simply does not appear in Russian-language searches. Here each language lives at its own address, so the /ru version is indexed independently. For a business with tourist and expat customers that is not a technical detail; it is a source of business.

05

Fighting image weight

A car rental site is really a photo site, and an unoptimised gallery kills it on a mobile connection. next/image serves every photograph at the size the screen actually needs and in a modern format, and catalogue images load only as they come into view. A mobile visitor downloads the three cars on their screen, not all twenty.

06

The blog is not decoration

An article like “renting a car in Baku: what to watch out for” is precisely the question a prospective renter types into a search engine. The blog is the entry point that catches those searches and routes them into the catalogue pages — a part of the sales channel rather than a content section.

Results

The platform is live as a demo and runs in three languages. PageSpeed Insights measures performance at 94 on mobile and 100 on desktop. For a real rental company only the catalogue data, the contact number and the branding need replacing — the structure stays as it is.

Tell me about your project — I usually reply the same day.

Nurlan Qadirov — Baku, Azerbaijan