SPB Git

spb/vrai-prix

Public

Vrai-Prix — l'évaluation du vrai prix des propriétés résidentielles au Québec.

feat(doc): page documentation /doc (guide + captures) + lien footer + PDF téléchargeable

Simon-Pierre Boucher committed (Aug 24, 2026) parent 6200a17 Browse files

8 changed files +201 −0

added public/doc/img/etape1.png +0 −0

Binary file not shown.

added public/doc/img/etape2.png +0 −0

Binary file not shown.

added public/doc/img/etape3.png +0 −0

Binary file not shown.

added public/doc/img/etape4.png +0 −0

Binary file not shown.

added public/doc/img/etape5.png +0 −0

Binary file not shown.

added public/doc/index.html +198 −0
@@ -0,0 +1,198 @@
1+<!DOCTYPE html>
2+<!-- Page /doc de Vrai-Prix — générée depuis le gabarit commun Groupe KA (2026-08-24). -->
3+<html lang="fr">
4+<head>
5+<meta charset="utf-8">
6+<meta name="viewport" content="width=device-width, initial-scale=1, viewport-fit=cover">
7+<title>Documentation — Vrai-Prix</title>
8+<meta name="description" content="Comment fonctionne Vrai-Prix : guide pas à pas, données, architecture.">
9+<style>
10+ :root{ --ink:#101014; --paper:#faf9f6; --accent:#ff5148; --muted:#6b6b70; --line:#e6e4de; }
11+ *{box-sizing:border-box} html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);
12+ font:16px/1.65 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;-webkit-text-size-adjust:100%}
13+ .container{max-width:960px;margin:0 auto;padding:0 20px}
14+ header.doc{background:var(--ink);color:var(--paper);padding:20px 0}
15+ header.doc .container{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
16+ header.doc a{color:var(--paper);text-decoration:none}
17+ .wordmark{font-weight:800;font-size:20px;letter-spacing:.02em}
18+ .wordmark .ka{color:var(--accent)}
19+ .btn-pdf{display:inline-block;background:var(--accent);color:var(--ink);font-weight:700;
20+ padding:10px 18px;border-radius:999px;text-decoration:none;font-size:15px}
21+ .hero{padding:48px 0 8px}
22+ .hero h1{font-size:clamp(28px,5vw,44px);line-height:1.1;margin:0 0 12px}
23+ .hero h1 mark{background:var(--accent);color:var(--ink);padding:2px 8px}
24+ .hero p.lead{font-size:18px;color:var(--muted);max-width:640px}
25+ .kicker{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);
26+ border-left:3px solid var(--accent);padding-left:10px;margin:40px 0 8px;font-weight:700}
27+ section{padding:8px 0 16px}
28+ h2{font-size:26px;margin:6px 0 12px}
29+ .step{display:grid;grid-template-columns:56px 1fr;gap:16px;margin:26px 0;align-items:start}
30+ .step .num{width:44px;height:44px;border-radius:50%;background:var(--ink);color:var(--accent);
31+ display:flex;align-items:center;justify-content:center;font-weight:800;font-size:18px}
32+ .step h3{margin:6px 0 6px;font-size:19px}
33+ .step p{margin:0 0 12px;color:#3a3a40}
34+ .shot{border:1px solid var(--line);border-radius:12px;overflow:hidden;box-shadow:0 8px 30px rgba(16,16,20,.08)}
35+ .shot img{display:block;width:100%;height:auto}
36+ .cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;margin:16px 0}
37+ .card{border:1px solid var(--line);border-radius:12px;padding:16px;background:#fff}
38+ .card b{display:block;margin-bottom:6px}
39+ table{border-collapse:collapse;width:100%;font-size:15px}
40+ th,td{border:1px solid var(--line);padding:8px 10px;text-align:left;vertical-align:top}
41+ th{background:var(--ink);color:var(--paper)}
42+ footer.doc{margin-top:56px;background:var(--ink);color:var(--paper);padding:28px 0;font-size:14px}
43+ footer.doc a{color:var(--accent);text-decoration:none}
44+ @media print{
45+ header.doc .btn-pdf{display:none}
46+ .shot{box-shadow:none;break-inside:avoid}
47+ .step{break-inside:avoid}
48+ a{color:inherit;text-decoration:none}
49+ }
50+ @media(max-width:640px){ .step{grid-template-columns:40px 1fr} .step .num{width:34px;height:34px;font-size:15px} }
51+</style>
52+</head>
53+<body>
54+<header class="doc">
55+ <div class="container">
56+ <a class="wordmark" href="/">Vrai-<span class="ka">Prix</span></a>
57+ <nav style="display:flex;gap:14px;align-items:center">
58+ <a href="/">← Retour au site</a>
59+ <a class="btn-pdf" href="./vrai-prix-documentation.pdf" download>Télécharger le PDF</a>
60+ </nav>
61+ </div>
62+</header>
63+
64+<div class="container">
65+ <div class="hero">
66+ <p class="kicker">Documentation · mise à jour 2026-08-24</p>
67+ <h1>Comment fonctionne <mark>Vrai-Prix</mark></h1>
68+ <p class="lead">La vraie valeur de votre propriété, sans boîte noire — estimation immobilière transparente pour tout le Québec.</p>
69+ </div>
70+
71+ <section>
72+ <p class="kicker">Vue d'ensemble</p>
73+ <h2>À quoi sert le site</h2>
74+ <p>Vrai-Prix estime la valeur marchande de n'importe quelle propriété du Québec — unifamiliale, plex, condo,
75+ chalet, terrain — et montre <em>pourquoi</em> : chaque comparable, chaque ajustement en dollars, la pondération
76+ du modèle, la fourchette honnête (P10–P90) et l'indice de confiance (A–D). Pas de score magique ni de boîte
77+ noire : la méthodologie complète (normes IAAO) est publiée intégralement sur le site. Pour les propriétaires,
78+ acheteurs, courtiers et curieux qui veulent une estimation honnête, vérifiable et gratuite, dans les
79+ 1 097 municipalités de la province.</p>
80+ <div class="cards">
81+ <div class="card"><b>3 747 008 propriétés</b>Les 6 millésimes (2021-2026) des rôles d'évaluation foncière
82+ géoréférencés du Québec (MAMH, données ouvertes) — 22 150 285 observations.</div>
83+ <div class="card"><b>745 119 ventes réelles</b>Transactions fusionnées spatialement avec les rôles
84+ (99,88 % d'appariement, distance médiane 0,6 m).</div>
85+ <div class="card"><b>MdAPE 11,0 %</b>Modèle hédonique LightGBM (ratio médian 0,995 en holdout) combiné
86+ à un moteur de comparables ajustés en dollars.</div>
87+ <div class="card"><b>1 097 municipalités</b>Couverture provinciale complète, valeur totale du parc :
88+ 2,01 billions $ — statistiques et palmarès publics.</div>
89+ </div>
90+ </section>
91+
92+ <section>
93+ <p class="kicker">Guide pas à pas</p>
94+ <h2>Utiliser le site en 5 étapes</h2>
95+
96+ <div class="step">
97+ <div class="num">1</div>
98+ <div>
99+ <h3>Arriver sur l'accueil</h3>
100+ <p>La page d'accueil annonce la couleur : 3,7 M de propriétés, 745 000 ventes réelles, fourchette honnête
101+ P10–P90, indice de confiance A–D. La barre « Adresse de la propriété » au centre est le point de départ ;
102+ si vous n'avez pas d'adresse, un plan B permet d'estimer manuellement par municipalité et caractéristiques.</p>
103+ <div class="shot"><img src="./img/etape1.png" alt="Étape 1 — accueil de Vrai-Prix"></div>
104+ </div>
105+ </div>
106+
107+ <div class="step">
108+ <div class="num">2</div>
109+ <div>
110+ <h3>Chercher l'adresse</h3>
111+ <p>Tapez l'adresse dans la barre de recherche : la recherche plein-texte (tolérante aux fautes) fouille les
112+ 3 747 008 unités d'évaluation et propose les correspondances au fil de la frappe. Cliquez sur la bonne
113+ adresse dans la liste.</p>
114+ <div class="shot"><img src="./img/etape2.png" alt="Étape 2 — recherche d'adresse avec suggestions"></div>
115+ </div>
116+ </div>
117+
118+ <div class="step">
119+ <div class="num">3</div>
120+ <div>
121+ <h3>Lire la fiche d'estimation</h3>
122+ <p>La fiche montre la valeur estimée, la fourchette honnête P10–P90, l'indice de confiance (A–D), l'écart
123+ avec l'évaluation municipale, puis tout le calcul : portrait de la propriété dessiné par les données du
124+ registre, comparables ajustés en dollars, historique 2021→2026. Deux rapports PDF sont téléchargeables :
125+ standard (3 p.) et professionnel format bancaire (6 p.).</p>
126+ <div class="shot"><img src="./img/etape3.png" alt="Étape 3 — fiche d'estimation avec fourchette et indice de confiance"></div>
127+ </div>
128+ </div>
129+
130+ <div class="step">
131+ <div class="num">4</div>
132+ <div>
133+ <h3>Explorer par la carte</h3>
134+ <p>L'onglet « Carte » ouvre Vrai-Prix Maps : déplacez la carte 3D ou géolocalisez-vous — chaque pastille est
135+ une unité d'évaluation avec sa valeur estimée 2026. Touchez une pastille pour l'aperçu, puis passez à
136+ l'estimation complète.</p>
137+ <div class="shot"><img src="./img/etape4.png" alt="Étape 4 — recherche par carte 3D"></div>
138+ </div>
139+ </div>
140+
141+ <div class="step">
142+ <div class="num">5</div>
143+ <div>
144+ <h3>Aller plus loin : statistiques, parc, agent Ka</h3>
145+ <p>La page « Statistiques » donne le portrait provincial (valeur du parc, palmarès des 200 municipalités,
146+ rapports PDF). « Parc immobilier » agrège jusqu'à 40 adresses en une évaluation consolidée, et
147+ « Ka · agent IA » répond en langage naturel, branché sur 12 outils serveur (évaluation, comparables,
148+ stats, dossier d'expert).</p>
149+ <div class="shot"><img src="./img/etape5.png" alt="Étape 5 — tableau de bord statistiques"></div>
150+ </div>
151+ </div>
152+ </section>
153+
154+ <section>
155+ <p class="kicker">Sous le capot</p>
156+ <h2>D'où viennent les données</h2>
157+ <p>Tout part des <b>rôles d'évaluation foncière géoréférencés du Québec</b> (MAMH, données ouvertes) : six
158+ millésimes 2021-2026, soit 22,15 M d'observations sur 3,75 M d'unités d'évaluation. Ces rôles sont fusionnés
159+ spatialement (au mètre près — distance médiane 0,6 m) avec <b>745 119 transactions réelles</b>. Le tout
160+ alimente un <b>modèle hédonique LightGBM</b> (log-prix, 18 variables, quantiles P10/P90) réentraîné par
161+ pipeline externe, et un <b>moteur de comparables</b> qui ajuste chaque vente voisine en dollars (marché,
162+ superficie, âge). L'estimation finale est hybride : 65 % modèle + 35 % comparables, avec indice de confiance
163+ A–D obligatoire. Les salaires du calcul sont montrés en entier : c'est le principe « zéro boîte noire »,
164+ conforme aux normes IAAO documentées dans la méthodologie publique du site.</p>
165+ </section>
166+
167+ <section>
168+ <p class="kicker">Questions fréquentes</p>
169+ <h2>FAQ</h2>
170+ <div class="cards">
171+ <div class="card"><b>L'estimation remplace-t-elle un évaluateur agréé ?</b>
172+ Non. C'est une estimation statistique à titre indicatif — elle ne remplace pas une évaluation par un
173+ évaluateur agréé (OEAQ). Sa force : la transparence et la fourchette honnête plutôt qu'un chiffre unique.</div>
174+ <div class="card"><b>Mon adresse n'apparaît pas dans la recherche, que faire ?</b>
175+ Utilisez le plan B sans adresse : estimation manuelle par municipalité + caractéristiques (superficie, année,
176+ terrain). La recherche est tolérante aux fautes — essayez aussi une graphie simplifiée.</div>
177+ <div class="card"><b>Que signifie l'indice de confiance A–D ?</b>
178+ Il mesure la fiabilité de l'estimation selon la densité de ventes comparables et la qualité des données
179+ locales : A = très fiable, D = à prendre avec prudence. Il est affiché sur chaque fiche, sans exception.</div>
180+ <div class="card"><b>Est-ce gratuit ? Faut-il un compte ?</b>
181+ L'estimation, la carte, les statistiques et les rapports PDF sont gratuits, sans compte. KA ID (la connexion
182+ unique du Groupe KA) sert seulement aux favoris « Mon univers Ka ».</div>
183+ <div class="card"><b>Le site est-il disponible en anglais ?</b>
184+ Oui, le site est bilingue FR/EN (bouton EN dans l'en-tête), et la méthodologie complète en 7 sections est
185+ publique.</div>
186+ </div>
187+ </section>
188+</div>
189+
190+<footer class="doc">
191+ <div class="container">
192+ <p><b>Vrai-Prix</b> — un service <a href="https://www.groupe-ka.com">Groupe KA</a>.
193+ Écosystème : les 13 plateformes sont liées au pied de chaque site.</p>
194+ <p>© 2026 Groupe KA — Simon-Pierre Boucher · <a href="mailto:contact@spboucher.ai">contact@spboucher.ai</a></p>
195+ </div>
196+</footer>
197+</body>
198+</html>
added public/doc/vrai-prix-documentation.pdf +0 −0

Binary file not shown.

modified src/components/FooterNav.tsx +3 −0
@@ -36,6 +36,9 @@ export default function FooterNav() {
36 <Link href="/contact" className={cls}> 36 <Link href="/contact" className={cls}>
37 Contact 37 Contact
38 </Link> 38 </Link>
39+ <a href="/doc/index.html" className={cls}>
40+ Documentation
41+ </a>
39 <button onClick={openCookiePrefs} className={`${cls} cursor-pointer`}> 42 <button onClick={openCookiePrefs} className={`${cls} cursor-pointer`}>
40 🍪 {fr ? "Préférences de témoins" : "Cookie preferences"} 43 🍪 {fr ? "Préférences de témoins" : "Cookie preferences"}
41 </button> 44 </button>
42 45
Menu

Theme