// Auteur : Simon-Pierre Boucher — contact@spboucher.ai // HeroCopy.swift (macOS) — le VRAI contenu héros de chaque site du Groupe KA (extrait // des pages d'accueil le 2026-08-21, source ka-ui/hero-copy.json) : kicker mono, // titre display avec segment surligné en boîte accent, sous-titre. C'est ce qui // fait que chaque univers de l'app ressemble à SON site. struct HeroCopy { let kicker: String? let headline: String /// Segment du titre affiché SUR l'accent (suffixe ou fragment de headline) let highlight: String? let sub: String } enum KAHeroes { static func hero(_ id: String) -> HeroCopy? { all[id] } static let all: [String: HeroCopy] = [ "lou-ka": .init( kicker: "La porte d'entrée vers votre prochain chez-vous.", headline: "Trouvez votre prochain chez-vous.", highlight: "chez-vous.", sub: "Tous les logements à louer au Québec, regroupés au même endroit — mis à jour automatiquement, avec toutes les photos et un lien direct vers l'annonce originale."), "immo-ka": .init( kicker: "Agrégateur — toutes les agences du Québec", headline: "Toutes les propriétés à vendre, un seul endroit.", highlight: "un seul", sub: "Immo-Ka rassemble les propriétés à vendre affichées par les agences de courtage immobilier du Québec — RE/MAX, Sutton, Via Capitale, Proprio Direct et plus — avec toutes les photos et un lien direct vers l'annonce originale."), "vrai-prix": .init( kicker: "Québec · 2021-2026", headline: "La vraie valeur. Sans boîte noire.", highlight: "Sans boîte noire.", sub: "Estimation basée sur 3,7 millions d'unités d'évaluation et 745 000 ventes réelles au Québec (2021-2026). Pas de boîte noire : on vous montre le calcul."), "auto-ka": .init( kicker: "Agrégateur indépendant — direct des concessionnaires", headline: "Toutes les voitures usagées à vendre au Québec. Un seul endroit.", highlight: "Un seul endroit.", sub: "Auto-Ka visite les sites des concessionnaires et marchands d'occasion de toutes les régions, normalise chaque annonce et détecte les nouveautés, les ventes et les baisses de prix — automatiquement."), "fabri-ka": .init( kicker: "Le répertoire des produits d'ici", headline: "Tous les produits québécois. Un seul endroit.", highlight: "Un seul endroit.", sub: "Fabri-Ka rassemble les catalogues des boutiques en ligne d'ici — fabriqué, conçu et vendu au Québec."), "food-ka": .init( kicker: "Agrégateur — épicerie du Québec", headline: "Tous les prix d'épicerie du Québec. Un seul endroit.", highlight: "un seul", sub: "Food·Ka rassemble les produits affichés par les bannières d'épicerie du Québec — Metro, IGA, Maxi, Super C, Provigo et plus — mis à jour automatiquement, avec prix unitaires et lien direct vers la fiche originale."), "resto-ka": .init( kicker: "Agrégateur — 17 régions du Québec", headline: "Tous les restos. Tous les menus. Tous les prix.", highlight: "Tous les prix.", sub: "Resto-Ka rassemble les restaurants du Québec avec leurs menus complets et leurs prix réels — cherchez un resto ou un plat, comparez, le contexte du prix (salle, emporter, livraison) est toujours affiché."), "sorti-ka": .init( kicker: "Agrégateur indépendant · mise à jour horaire", headline: "Toutes les sorties du Québec, un seul endroit.", highlight: "un seul endroit.", sub: "Concerts, festivals, spectacles, expositions, sport, famille — agrégés depuis des billetteries et des sources ouvertes officielles, dans les 17 régions. Chaque fiche renvoie vers la billetterie ou la source originale."), "crea-ka": .init( kicker: "Annuaire des créateurs du Québec", headline: "Chaque créateur québécois. Tous ses liens.", highlight: "liens.", sub: "Un « Linktree collectif » du Québec : influenceurs, youtubeurs, streamers, podcasteurs — leurs comptes regroupés et découvrables par niche, région, langue et taille d'audience."), "job-ka": .init( kicker: "Offres directement des employeurs", headline: "L'emploi au Québec, à la source.", highlight: "à la source.", sub: "Job·Ka agrège les offres directement depuis les pages carrières des employeurs québécois. Salaires transparents, lien vers l'offre originale, aucun intermédiaire."), "trouve-ka": .init( kicker: "Le moteur de recherche du web québécois", headline: "Trouve KA", highlight: "KA", sub: "Le moteur de recherche indépendant du web québécois."), "api-ka": .init( kicker: "Plateforme centrale · node M3U96b", headline: "Toutes les données KA, centralisées chaque jour.", highlight: "KA", sub: "API-Ka collecte, sauvegarde et historise quotidiennement les données de l'écosystème Groupe KA, puis les expose via une API publique, versionnée et documentée."), "groupe-ka": .init( kicker: "Holding d'agrégateurs automatisés · Québec", headline: "Mille sites. Un seul ·KA.", highlight: "·KA.", sub: "Ka, c'est l'agrégation. Des centaines de connecteurs lisent les sites à la source, normalisent la donnée et se resynchronisent seuls, jour et nuit."), ] }