Case study · Real estate
Click Real Estate
A digital estate agency in Seville where buyers search by neighbourhood and sellers follow their sale from their phone.
- Industry
- Real estate · Seville
- Our role
- Design, development, hosting and maintenance
- Year
- 2026
- Website
- clickrealestate.es ↗


The problem
Big property portals treat every listing the same and leave sellers in the dark: they can’t see how many viewings their home gets or which offers come in. Click wanted the opposite — a small, curated set of homes, useful data for every neighbourhood, and sellers who see everything in real time.
What we did
Design
- Product identity and component system
- Search, property pages and area pages
- Designed mobile-first
Logic
- Listings with filters and a map by neighbourhood and town
- Buyer alerts
- Home valuations backed by statistical models
- Private seller dashboard: viewings and offers in real time
- PDF reports
Infrastructure
- Next.js 15 and React 19 with TypeScript and Tailwind 4
- FastAPI with async SQLAlchemy, PostgreSQL 16 and Alembic
- Redis, transactional email via Resend and S3-compatible storage
- Docker on Hetzner, error tracking with Sentry
Technical decisions
- Leaflet maps on GeoJSON
- Neighbourhoods and towns are drawn with their real boundaries, so search and area pages share the same geography.
- NextAuth with Google sign-in and two-factor
- The seller area holds sensitive data, so access goes through Google plus a second factor.
- An async Python backend
- FastAPI with async SQLAlchemy on PostgreSQL 16 and versioned Alembic migrations — the same language as the statistical valuation models.
- Email, files and reports
- Transactional email via Resend, files in S3-compatible storage and PDF reports generated on the server.
- Docker on Hetzner, watched by Sentry
- The whole system runs in containers on a Hetzner server, with error alerts in Sentry and 30+ scheduled jobs.
Screenshots





Built for phones
Every screen was designed at 390 px wide first, then scaled up to desktop.
Outcome
The site is live at clickrealestate.es and we continue to maintain it.
- automated tests across backend and frontend
- 11,000+
- areas on the map: 33 Seville neighbourhoods and 44 towns
- 77
- API endpoints
- 700+
- scheduled jobs: alerts, market data, backups
- 30+
Figures checked against the code and production in November 2026.
Visit clickrealestate.es ↗Stack: Next.js 15 · React 19 · TypeScript · Tailwind 4 · NextAuth · Leaflet + GeoJSON · FastAPI · SQLAlchemy async · PostgreSQL 16 · Alembic · Redis · Resend · S3 · Sentry · Docker · Hetzner