All projects

Real estate marketplace and radar

The car engine retargeted to real estate, with a listing-change radar.

Vue 3webedge-dbScraping
housemarket.lt screenshotDev-story
01

Challenge

Real estate listings live or die on search visibility, and buyers want to know when a listing or its price changes at the source.

02

What we did

Built on the carsmarket engine (Vue 3 + Vite + webedge-db, BetterAuth login), with @unhead/vue emitting title/meta/canonical and JSON-LD for listings, plus a separate radar that monitors listing sources for new and changed listings.

03

Result

A real-estate marketplace with proper SEO markup, and a monitoring side that surfaces source and price changes rather than just static listings.

Dev-story article

Real estate marketplace and radar: how the project was built

The marketplace engine originally written for a car classifieds site had to be retargeted to property: different taxonomy, different search axes, and a market where one portal already owns organic search. The tension was building something that ranks and stays honest without mass-scraping anyone. So the work leaned into structured SEO landings, defensible data flows, and a radar that watches listings and feeds instead of hammering third-party sites.

Sections

05

Modules

05

Stack

Vue 3 + webedge-db

01

Why the project exists

Real estate listings live or die on search visibility, and buyers want to know when a listing or its price changes at the source.

The marketplace engine originally written for a car classifieds site had to be retargeted to property: different taxonomy, different search axes, and a market where one portal already owns organic search. The tension was building something that ranks and stays honest without mass-scraping anyone. So the work leaned into structured SEO landings, defensible data flows, and a radar that watches listings and feeds instead of hammering third-party sites.

02

What was built

Built on the carsmarket engine (Vue 3 + Vite + webedge-db, BetterAuth login), with @unhead/vue emitting title/meta/canonical and JSON-LD for listings, plus a separate radar that monitors listing sources for new and changed listings.

A single-page Vue 3 marketplace with a user dashboard and admin zone, backed by a reactive realtime backend for queries, search and file storage. It covers city/district search on a clustered map, per-listing price history, saved-search email alerts, and an agency feed pipeline that imports XML/CSV/JSON into a review queue rather than publishing blindly.

03

Main modules and user path

M01

SEO landing generator that emits sitemap entries and client-side Breadcrumb/CollectionPage JSON-LD for segment+city+district searches like apartments-for-rent-in-a-given-city, with per-route title/canonical driven by @unhead/vue

M02

Agency feed importer that auto-detects XML/CSV/JSON, normalizes both English and Lithuanian field keys, drops incoming listings into a pending queue keyed by external_id and can deactivate objects that vanished from the feed

M03

Hourly feed-monitoring cron that writes system alerts for failed, stale, empty or mass-deactivated feeds and mails admins through the same mailer channel with a cooldown

M04

Search-demand analytics that aggregate anonymous daily stats — city, district, type, price/area bands, result counts and no-result searches — behind rate limits, surfaced in an admin demand dashboard

M05

Listing price-history plus price-per-square-meter filters and saved searches with instant/daily/weekly email digests that only send genuinely new active listings

04

Architecture and technology decisions

Built with Vue 3, webedge-db, Scraping.

Vue 3 + Vite SPA on Cloudflare Pages, a reactive realtime backend (webedge-db) for data/auth/file storage with Leaflet maps, and a migration from raw reactive subscriptions to TanStack Vue Query for paginated queries and subscription cleanup.

05

Result and lessons

A real-estate marketplace with proper SEO markup, and a monitoring side that surfaces source and price changes rather than just static listings.

A working property marketplace that grows organic reach through structured landings while keeping ingestion safe: feeds go through review, missing objects get deactivated, and admins get alerted when a feed breaks.

Read next

These projects share nearby technical or product decisions, so they show how the same principle behaves in another context.

Have a similar idea?

Discuss your project