Prototype
AI Apartments Aggregator

Find apartments ranked by AI photo quality

An experimental tool that collected real estate listings in one place and used a local AI model to rank apartments by how good their photos look — saving hours of manual browsing. The app shows the listings collected so far.

AI Apartments — St. Petersburg
All1 room2 rooms▼ AI Score
🏠AI ★ 9.2
32 000 ₽
Nevsky, 2 rooms, 54 m²
Score
9.2
🏠AI ★ 8.7
28 500 ₽
Vasileostrovsk, 1 room
Score
8.7
🏠AI ★ 6.1
21 000 ₽
Primorsky, 1 room
Score
6.1
🏠AI ★ 3.4
18 000 ₽
Kolpino, 2 rooms
Score
3.4
Ranked by an Ollama vision model — renovation rating 0–10 from the flat's photos

How the pipeline works

Four automated stages from crawl to ranked results, running locally with no external API dependencies.

1

Crawl listings

The Laraue.Crawling library scrapes real estate sites, handles JS rendering, and stores raw listing data into PostgreSQL.
2

Download photos

For each listing, the available photos are fetched, ready for AI analysis.
3

AI renovation rating

A local Ollama vision model looks at all the photos of a flat together, as one collage, and rates its renovation from 0 to 10.
4

Browse & filter

Results surface in the web UI — sort by AI score, filter by rooms and price. Skip past badly photographed listings instantly.

Built with open-source tools

Everything runs locally — no paid APIs, no cloud dependencies.

Ollama

Locally-hosted LLM runner. The project uses a vision model to evaluate apartment photo quality and return a numeric score without sending data to the cloud.

Learn more →

Laraue.Crawling

The in-house C# crawler library powering the data collection. Supports static HTML and JavaScript-rendered pages via PuppeteerSharp.

View project →

ASP.NET Core + PostgreSQL

Backend API written in C# with ASP.NET Core. Listing data and AI scores are persisted in PostgreSQL, served to the web frontend.

Read the article →

The crawler library is public

The Laraue.Crawling library used to build this project is open-source on GitHub — reusable for any web scraping project in .NET.

Laraue.Crawling

A highly customizable C# crawler library with support for static HTML (AngleSharp) and JavaScript-rendered pages (PuppeteerSharp). Schema-based extraction and a base class for scheduled crawler jobs.

View on GitHub

Frequently Asked Questions

It's an experiment — a personal project built to explore AI-powered apartment search. It works and you can browse the collected listings, but expect rough edges rather than a polished product.

Saint Petersburg, Russia, with listings from Cian and Avito. No new listings are collected now, so the app shows a snapshot.

All the photos of a listing are merged into one collage, and a local Ollama vision model rates the renovation of the whole flat from 0 to 10. Separately, an ideality score combines that rating with the floor and the distance to the metro.

No. Crawling, storage, and AI scoring all run locally — there are no paid APIs or cloud dependencies involved.

An experiment

Browse AI-ranked apartments

Browse the snapshot of Saint Petersburg listings collected so far, sorted by AI photo quality. A prototype — but a working one.