Lou·Ka — tous les logements à louer du Québec, un seul endroit.
HTML 98.9%
Python 0.6%
-
Sun, Aug 30, 2026 5
-
Sat, Aug 29, 2026 4
-
Fri, Aug 28, 2026 2
-
Thu, Aug 27, 2026 11
-
feat(scraping): migration Firecrawl -> Scrapfly des 6 connecteurs a rendu JS
…
- base.get_rendered : rendu via Scrapfly (render_js+ASP), wait_ms = ancien waitFor Firecrawl, retry x3 sur contenu vide puis echec honnete ; FIRECRAWL_API retire du socle - aalto/osgoode/brigil/realstar : _rendered delegue au socle (retry centralise) - realstar/osgoode/brigil : selecteur li[class*=property-box] — le rendu Scrapfly capture le DOM avant que le JS RentCafe ne revele les cartes (property-box-hidden), qui sont completes ; filtre QC en aval inchange - via_capitale : CARD_SPLIT accepte les hrefs relatifs (serialisation Scrapfly) en plus des absolus (fixtures Firecrawl historiques) - fixtures record/replay : get_rendered accepte wait_ms (cle de rejeu = URL) - fixtures re-enregistrees via Scrapfly : aalto 24, osgoode 4, brigil 12, realstar 9 ; rejeu test_connectors 10/10 - gen_connector_docs : backend get_rendered documente Scrapfly (ex-Firecrawl) Valide en live : aalto 24, lynk_olymbec 4, via_capitale page 1 = 34 cartes. Lou-Ka ne depend plus de FIRECRAWL_API_KEY.
-
pause(ontario): expansion ON suspendue temporairement — rien d'effacé
…
- .env : LOUKA_ONTARIO=1 commenté (les 56 connecteurs gatés sortent du registre) - sources.json : 65 sources ON -> status pause + note_pause - quality.evaluate : quarantaine pause-ontario (published=0) pour province=ON tant que le flag n'est pas reposé ; province ajoutée au backfill et à l'évaluation à l'ingestion (db.py) - docs/ONTARIO-PAUSE.md : quoi/pourquoi/comment réactiver 5 851 annonces ON conservées en base, dépubliées. QC intact (62 412 publiées).
-
Revert "[ka2] fix connecteur gia_t: garde-fou page liste vide (200 à 0 octet via escalade quand gia-t.com est en panne) — le sync échoue honnêtement au lieu de désactiver l'inventaire"
…
This reverts commit e9556c5b64f5f4aa187e3e68a56f684f605fea19.
-
feat(ontario): vague 2 — 45 nouvelles sources ON (+2 964 annonces, ~5 800 ON au total)
…
7 rsgw_* (passerelle website-gateway : sterlingkaramar, drewlo, fitzrovia, bgo, panoramic, drakepm, arcanos), 12 lift_*, 5 rc_*, 11 bld_* (Buildium), 1 apf_* (AppFolio), 9 sur mesure (starlight, medallion, kggroup, qresidential, riocan, sifton, accommod8u, greenrock, westdale). Anti-doublons : exclude_import_ids (Greenrock via sterlingkaramar) + sterlingkaramar.com dans _SKIP_DOMAINS de starlight. sources.json : 503 entrées, champ connector harmonisé. Tout gaté LOUKA_ONTARIO=1. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
-
feat(ontario): activation — les 20 sources ON passent à « actif » dans sources.json
…
LOUKA_ONTARIO=1 posé dans le .env de prod (non versionné). Première synchronisation faite : 2 828 annonces ON en base (2 624 publiées) sur 30 sources — Toronto 685, London 219, Ottawa 214, Hamilton 154, Sarnia 117, Kitchener 117… Villes ON exposées automatiquement par /api/facets. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
-
feat(ontario): 20 nouveaux connecteurs ON + socle province, tout gaté LOUKA_ONTARIO=1 (zéro impact prod QC)
…
Socle : Listing.province + bbox coordonnées ON (schema.py), migration province TEXT DEFAULT 'QC' (db.py), géocodage ON via Nominatim sans repli Adresses Québec (geocode.py), townhouse/bungalow résidentiels (quality.py). Nouveaux connecteurs (disabled hors gate) : liftsystem.py (13 clients dynamiques lift_* via data/liftsystem_clients.json — Greenwin, Park, Williams & McDaniel, Briarlane, DMS, Signet, Shelter, York, Terracorp, RentSarnia, First North, TVM, Urbandale ; 922 propriétés résidentielles), rentcafe.py (4 clients rc_* via data/rentcafe_clients.json — Effort Trust, Osgoode ON, GWLRA, O'Shanter ; Scrapfly ASP), homestead.py + skyline.py (passerelle publique website-gateway.rentsync.com), killam.py (blob #available_prop RentCafe). Connecteurs QC élargis sous gate (uids QC vérifiés identiques hors gate) : capreit +189, boardwalk +74, minto +81, hazelview +14, interrent +83, morguard +258, akelius +95, metcap +60, realstar +12, cogir +38, centurion +52 annonces ON potentielles. sources.json : +19 entrées ON (status inactif) + skyline recyclé. Registre : 365 connecteurs sans gate (inchangé), 385 avec LOUKA_ONTARIO=1. Potentiel à l'activation : ~1 200-1 600 annonces ON (~30 sources). Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
-
-
Wed, Aug 26, 2026 8
-
docs: gestion-immobiliere-ontario.md — cartographie ~240 gestionnaires ON (recherche pré-expansion, rien d'implémenté)
…
8 régions (Toronto, GTA, Ottawa/Est, Hamilton-Niagara, KW-Guelph, London/SW, Nord, Centre), multi-régions, leviers plateformes (LiftSystem/RentCafe/Buildium/AppFolio) et annexe exclusions (agrégateurs écartés par principe). Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
-
feat(ka-id v2.2): boost COLLABORATIVE_MODEL des recommandations du modèle ALS (kaid.py aligné sur ka-ui.git/kaid f844854)
…
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
-
feat(ka-id v2.1): CF SIMILAR_USERS + langue transversale (kaid.py), SDK pilules « Sauvegarder cette recherche »/« Pas pour moi » (ka-id.js), alignés sur ka-ui.git/kaid cbe9c9f
…
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
-
fix(ka-id v2): kaid.py — les plages numériques pèsent 0.6 (un simple bon prix ne score plus 1.0), aligné sur ka-ui.git/kaid
…
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
-
feat(ka-id v2): personnalisation Groupe KA — louka/kaid.py (canonique ka-ui.git/kaid), journal serveur (search/detail_view/favorite), reranking personnalisé du tri par défaut (blend 0,35, session > long terme, masqués exclus), enrichisseur ka_id (session legacy sans ka_id), routeur /api/kaid, SDK ka-id.js, badge « Recommandé pour vous » sur ListingCard
…
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
-
Mode carte : jetons Ka re-déclarés sur le canevas (accent orange dans la carte, pas le noir générique)
…
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
-
Mode carte Ka Map System v2 — expérience immersive plein viewport
…
- MapSearch réécrit autour de KaMapShell : mobile edge-to-edge + bottom sheet de résultats à 3 crans, desktop split liste|carte redimensionnable (ratio persisté) avec carte quasi plein écran d un clic - Toolbar unifiée (zoom, 3D, dessiner, me localiser) au lieu des pilules flottantes ; « Rechercher dans cette zone » contextuel - Mode dessin temporaire avec CTA « N logements dans cette zone » - Fiche contextuelle v2 : photo, prix, favori, swipe/chevrons entre voisines (remplace le carrousel mobile) - Thème markers v2 : pilules off-white/encre premium, orange réservé au « sous le marché » et à la sélection ; clusters légers à anneau orange avec loyer moyen sous la bulle - Home : vue carte mémorisée dans l URL, feuille de filtres en modale au-dessus du mode carte (desktop), widget Ka Agent masqué en mode carte Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
-
-
Tue, Aug 25, 2026 10
-
Court terme : hotellerie du Quebec en reservation directe (1 922 fiches)
…
- sithotels : repertoire officiel SIT Quebec (ministere du Tourisme/CITQ), 1 542 fiches squelettes geolocalisees avec no CITQ ; saute les hotels couverts par un connecteur moteur (fiche riche prioritaire) - mews : 110 hotels via l'API bookingEngine (session signee md5, Origin obligatoire), prix frais a chaque sync, photos, repli geoloc SIT - reservit : 235 hotels via l'API du front Angular ; sessions proxy a IP collante par hotel (le direct est banni du noeud et l'IP tournante declenche le filtre de securite Reservit) - scripts/detect_hotel_engines.py + data/hotels_engines.json : table hotel -> moteur de resa (1 174 sites sondes : 278 reservit, 121 mews) - schema : types Hotel et Motel ; Sources : categorie Hotellerie ; fiche CT : CTA « Reserver en direct a l'hotel » pour la categorie hotels Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
-
Court terme : connecteur origine — reseau Origine artisans hoteliers (35 hotels/auberges, prix forfaits ramenes a la nuit)
…
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
-
Fiche logement : refonte editoriale v2 — icones contextuelles, sections sans boites
…
- Nouveau composant AmenityIco (~34 pictos maison, trait 1.8) : chaque inclusion/caracteristique est appariee par mots-cles (accents neutralises) a SON icone — lave-vaisselle, chauffage, balcon, stationnement, animaux, piscine, foyer… — fini le meme ✓ repete dix fois - Inclusions : grille en filets (tuile icone 32px accent-soft, libelle, ✓ discret a droite pour le confirme ; neutre pour les mentions libres) - Chips cles du hero : hairline + icone contextuelle (3½ → porte, dispo → calendrier, pi² → regle…) au lieu d aplats marine - Colonne editoriale (gauche) de-boxee : description, inclusions, details pratiques respirent sans carte — les modules de donnees (droite) restent en cartes ; titres avec tiret accent net (sans bordure/ombre heritees) - Details pratiques : rangees en filets, cles en micro-mono, fini les tuiles - Prix 38-54px, ancres en onglets textes, en-bref en filet accent, galerie au cadre allege (hairline, rayon 10) - Mobile : le CTA sticky prend le bas d ecran, la tabbar s efface sur la fiche (body:has(.cta-sticky)) — plus de chevauchement
-
Desktop : grille uniforme + header sans debordement
…
- Grille editoriale : suppression du grand format 7n+1 (annonces de tailles inegales jugees etranges) — 3 colonnes uniformes, le style editorial (fiches sans boite, image dominante, stagger) est conserve - Header : nav sans retour de ligne (Court terme tenait sur 2 lignes), burger des 960px, badge Groupe KA masque sous 1140px (debordement de 6px du bouton Connexion autour de 1100px) — verifie par mesure Playwright de 1440 a 900px : plus aucun element coupe a droite
-
Court terme : DA editoriale v2 (meme langage que l accueil)
…
- Hero typo geant Trouvez votre prochaine escapade. avec surlignage orange irregulier ; benefits-cards et stat-chips remplacees par la ligne LIVE (hebergements indexes en count-up, regions, derniere synchro reelle des connecteurs ct qui tictaque, prix moyen/nuit) - Recherche au coeur : grand champ Ou voulez-vous vous evader ? souligne, criteres Region/Type/Prix par nuit en filets, Tous les criteres avec badge - Barre de resultats sticky N hebergements · Liste|Carte · Filtres (mobile), FAB supprime ; resume des criteres actifs sous la recherche sur mobile - Grille magazine grid-edito (grand format 16/9 toutes les 7 fiches) et transitions de vue ; reutilise integralement la couche CSS v2 de l accueil - Hooks useCountUp/useAgo factorises dans src/live.ts (partages Home/CT)
-
Refonte editoriale v2 de l accueil — direction artistique premium
…
Moins de boites, plus de typographie : le contenu structure la page. - Hero : composition typographique geante (clamp 44-88px), surlignage orange irregulier en trait SVG sous chez-vous., plus de gros boutons rectangulaires - Donnees vivantes : ligne mono LIVE avec compteur anime (count-up 0,9s), derniere synchro reelle qui tictaque a la seconde (max last_sync des connecteurs), sources et loyer moyen — separes par filets, zero chip - Recherche au coeur : grand champ Ou voulez-vous habiter ? souligne 2px (focus accent), criteres inline Ville/Quartier/Loyer separes par filets verticaux, bouton texte Tous les criteres avec badge — la boite filterbar disparait de l accueil - Barre de resultats sticky : N logements · Liste|Carte (onglets textes a soulignement anime scaleX) · Filtres (mobile) — remplace le FAB flottant - Fiches editoriales : plus de carte-boite — l image domine (radius 10, zoom 1,025 au survol), prix 22px niveau 1, adresse niveau 2, quartier/ville en mono uppercase niveau 3, source en micro-mono niveau 4 - Grille a rythme magazine : 3 colonnes, 1 grand format panoramique 16/9 toutes les 7 fiches, apparition en decale par colonne, align-items start - Pagination nue : chiffres sans boites, page courante soulignee accent - Nav mobile : tabbar flottante detachee des bords (radius 18, blur, ombre portee), etat actif = trait accent sous l icone ; widget KA Agent remonte - Primitives locales v2 : rayons 0/6/10/18, durees 150/240/350ms, hairlines - Feuille mobile : resume des criteres actifs sous la recherche (remplace le FAB), poignee, application sticky - Classes partagees avec CourtTerme (.hero, .filterbar, .stat-chip…) intactes : la refonte vit dans de nouvelles classes + une couche finale
-
Accueil : pastilles actives — neutraliser l uppercase herite de la page Sources
…
La regle .pill de la page Sources (10.5px, uppercase) venait apres celle de l accueil et fuyait sur les pastilles de filtres actifs ; text-transform et letter-spacing sont desormais explicites sur .pills .pill.
-
Accueil : refonte majeure du rendu — CTA hero, filtres et boutons peaufines
…
- Hero : halo d accent + trame de points decorative, rangee CTA (Explorer / Voir la carte) avec ombres decalees accent, stat-chips interactives (tabular-nums, survol), avantages en mini-cartes bordees encre - Filterbar : cadre 2px + rayon 16, recherche 52px focus accent (ombre 3x3), selects survolables, bouton Plus de filtres avec icone, badge compteur et chevron anime, panneau avance en pointille avec easing - Segments : etat actif encre + souligne accent interieur ; pastilles actives avec animation d apparition et survol danger (intention de retrait) - Chips 42px avec icones alignees ; bascule Liste/Carte etat actif encre - Mobile : poignee de sheet, bouton Voir les resultats sticky en bas de la feuille, FAB avec badge compteur