Investigations

Airbnb Clone

JavaScript February 2026

A pixel-perfect Airbnb recreation with 63 React components, search with filters, listing detail pages, and responsive design.

This was an exercise in precision — recreating Airbnb's UI as faithfully as possible. Not a simplified version, but the actual layout, spacing, typography, and interactions you see on the real site.

The result is 63 React components covering the full experience: search bar with location autocomplete, date pickers, guest selectors, category filters, listing cards with image carousels, map view, listing detail pages with photo galleries, amenity lists, review sections, and the booking widget.

Every component matches Airbnb's design language — the rounded corners, the specific greys, the hover states, the responsive breakpoints. The image carousels have the same dot indicators and swipe behaviour.

I deliberately avoided any CSS framework to force myself to match their design system exactly. It's all custom CSS with CSS Grid and Flexbox for layout. The data layer uses mock data that mirrors Airbnb's actual API response structure.

What this project demonstrates

63 React components matching Airbnb pixel-for-pixel
Search with autocomplete, date pickers, guest selectors
Image carousels with dot indicators and swipe behaviour
Listing detail pages with galleries, amenities, reviews
Custom CSS (no framework) with CSS Grid and Flexbox
Mock data mirroring Airbnb API response structure

Technologies

ReactCloneCSSResponsiveUI/UX

© 2026 Jonathan Leahy · v0.9.1