Rent-Ka
www.rent-ka.com — Apartments and homes for rent across Canada outside Québec (Ontario first, national expansion in progress). A Groupe KA service, sister site of Lou-Ka (Québec rentals) and House-Ka (Canadian homes for sale).
Rent-Ka continuously aggregates rental listings published by Canadian property managers, REITs and national portals: every listing keeps its photos, price, availability and a direct link to the original ad.
Architecture
Forked from Lou-Ka on 2026-08-27 (the Ontario expansion paused there — 65
sources, ~5,850 listings — moved here and went live, with every Québec-only
layer removed). The Python package is rentka/.
- Backend — FastAPI + SQLite (
data/rentka.db): connectors →ingest→ geocoding (Nominatim) → dedup →quality(completeness score + publication gate + Québec exclusion) → API. - Connectors (81) — three families:
- Platform generators (53): LiftSystem/Rentsync (
lift_*), RentCafe (rc_*), Rentsync gateway (rsgw_*), Buildium (bld_*), AppFolio (apf_*) — one JSON registry per platform indata/*_clients.json; adding a property manager anywhere in Canada = adding one client row (optional"province"key, default"ON"). - National landlords (12): Boardwalk, CAPREIT, Centurion, Cogir, Hazelview, InterRent, MetCap, Minto, Morguard, Realstar, Akelius, Killam… — whole portfolio outside Québec (AB/SK/BC/MB/NS/NB included).
- National portals (5): Rentals.ca, Zumper, Kijiji, Apartments.com, Facebook Marketplace — major metros in every province.
- Platform generators (53): LiftSystem/Rentsync (
- Frontend — React/Vite, English (en-CA), cobalt skin. Routes:
/,/listing/{uid},/city/{slug}[/{type}],/cities,/stats,/sources,/privacy,/terms. Map = Ka Maps (@groupe-ka/ka-maps, expected at../../ka-maps). - SEO —
rentka/seo.pyrenders server-side HTML (meta, JSON-LD, sitemaps) in English. - Enrichment kept (Canada-wide, no Québec dependency): KA Scores (OSM Walk/Transit/Bike/Quiet/Services), fair rental value, building passport, listing history, re-listed-unit detection, Winter Score, photo audit, manager profiles (SerpApi).
- Removed vs Lou-Ka — everything Québec-only: Hydro-Québec estimates, rent registry (registre des loyers), TAL history, BDZI flood, RSQAQ air, gazquebec, quartier (QC census), real-cost breakdown, movers directory, the whole short-term subsystem, and ~300 QC connectors.
Canonical unit types (English)
Studio | 1 bedroom | 2 bedrooms | 3 bedrooms | 4 bedrooms | 5+ bedrooms | Loft | Penthouse | Condo | Townhouse | House | Room — see
rentka/normalize.py. Québec «n½» input converts automatically
(n½ = n−2 bedrooms), and a central FR→EN label funnel in
schema.finalize() translates amenities/availability/price labels coming
from fr-ca page templates — the DB is uniformly English.
Run
python run.py sync [source ...] # sync listings
python run.py watch [minutes] # sync loop (default 60 min)
python run.py serve [port] # API + frontend (default 8125)
python run.py list # registered connectors
python run.py geocode [n] # geocode listings missing coordinates
python run.py quality # recompute publication gatepm2 (node M4M36): rent-ka-web (serve 8125) · rent-ka-sync (watch 60) ·
rent-ka-ngrok (ngrok http --url=www.rent-ka.com 8125).
Tests
python -m pytest tests/Connector snapshot tests replay recorded fixtures (tests/fixtures/);
re-record with python run.py record <source> after changing a connector.
Expansion playbook
The fastest way to add coverage is the platform registries: find property
managers whose sites run LiftSystem/RentCafe/Rentsync/Buildium/AppFolio
(signatures documented in gestion-immobiliere-ontario.md §10) and append
a client entry with its province. docs/canada-sources.md tracks the
national source inventory.