SPB Git

spb/fabri-ka

Public

Agrégateur de produits québécois — www.fabri-ka.com

History of frontend/src/components Clear filter
page 1
  1. Mon, Sep 7, 2026 1

    1. feat(fiche): refonte premium mobile-first de la fiche produit (2026-09-07)
      …
      Même socle que les fiches Lou-Ka v3 / Immo-Ka v3 (frontend/src/fiche/,
      préfixe fb-, tokens --fb-*, fond papier, cartes blanches bord 1 px,
      terracotta réservé aux CTA/prix ; masthead vert conservé en version
      compacte) : héro (boutique avec logo · lieu, prix + prix barré + fourchette,
      capsules origine A–E / solde / dispo / devise, titre + marque · catégorie ·
      type, galerie contain sur blanc + lightbox, actions favoris / partage / Voir
      chez la boutique) ; « En bref » déterministe (classe d'origine, rabais,
      disponibilité et stock faible, note moyenne, déclinaisons, devise) ;
      navigation sticky ; « Prix et déclinaisons » (KPI, options en puces,
      déclinaisons 8 + Voir les N, note, méthodologie) ; « Le produit » (grille
      icône/valeur, fiche technique, description tronquée, infos additionnelles en
      accordéons, étiquettes) ; « La boutique » ; « Aussi chez la boutique » ;
      Dossier ; Sources. CTA sticky après le héro, aside desktop sticky,
      « Demander à Ka » via le widget KA Agent. Header compact sur /produits/<slug>
      (favoris + partage via fiche/current.ts, badge et recherche masqués).
      components/KaIcons.tsx (pictos partagés, distinct de Icons.tsx existant).
      Aucun order CSS ; pas de scrollIntoView à l'ouverture. Scripts QA :
      preview.mjs, check-order.mjs, shots.mjs, interactions.mjs.
      
      Validé sur M4M64a : tsc + vite build, check-order OK, interactions OK,
      captures 6 largeurs ; dist basculé, aucun changement API.
      Simon-Pierre Boucher · 1 file +291
  2. Fri, Aug 28, 2026 2

    1. Simon-Pierre Boucher · 3 files +4 −4
    2. feat(portée Canada): Fabri-Ka devient l'agrégateur des boutiques canadiennes, plus seulement québécoises.
      …
      - schema.py : REGIONS = 17 régions administratives QC (granularité historique conservée, données existantes intactes) + 12 provinces/territoires (Ontario, C.-B., Alberta, …) — les pages /region/<province>, facettes et sitemaps s'activent automatiquement dès qu'une boutique hors-Québec a des produits (une listing vide reste 404 anti soft-404, comportement voulu).
      - scripts/verify.py : signaux de localisation élargis au Canada — codes postaux A–Y (plus seulement G/H/J), indicatifs téléphoniques de toutes les provinces + territoires, « made in Canada / canadian made / fièrement canadien », mentions Canada/provinces, TLD .ca (présence canadienne exigée par la CIRA). Les champs gardent leurs noms historiques qc_* (compat cache + registry).
      - scripts/build_registry.py : garde-fou localisation désormais pan-canadien (ca_signal), région dérivée du code postal hors-Québec via première lettre → province (X0A/X0B/X0C = Nunavut, X* = TNO), ALL_REGIONS étendu.
      - Frontend + SEO : tous les textes « produits québécois / boutiques québécoises / Fabriqué au Québec (classes A–E) » → canadiens ; REGIONS_ALL dans api.ts (slugs provinces) ; fallbacks de localisation 'Québec' → 'Canada' ; manifest, tagline ecosystem.json, README. Noms propres préservés (certifications Aliments du Québec / Les Produits du Québec, régions Nord-du-Québec / Centre-du-Québec, taglines des autres apps Ka).
      - Connecteurs plateforme inchangés (ils ne filtrent pas par région : le registre stores.json décide) — les prochaines vagues de découverte peuvent maintenant admettre des sources pan-canadiennes.
      
      Vérifié : build Vite OK, pm2 restart fabri-ka-web + fabri-ka-sync, healthcheck 200 local + www.fabri-ka.com (titre « Tous les produits canadiens »), /api/products?region=Ontario répond, régions QC existantes intactes (/region/monteregie 200).
      
      Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
      Simon-Pierre Boucher · 3 files +4 −4
  3. Wed, Aug 26, 2026 1

  4. Tue, Aug 25, 2026 2

    1. Barre de navigation mobile commune Groupe KA (KA Tabbar v1)
      …
      La tab bar maison migre vers la pilule flottante du standard ka-ui/nav :
      Accueil · Produits · Boutiques · Recherche, thème sombre vert masthead,
      actif ambre, safe-area iOS. L overlay de recherche plein écran est conservé.
      Sur les fiches produit/boutique, le CTA sticky prend le bas (pilule effacée).
      
      Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
      Simon-Pierre Boucher · 1 file +17 −27
    2. Major upgrade fabri-ka: connecteurs enrichis + refonte fiches produit/boutique
      …
      Backend — 6 connecteurs enrichis (details JSON par produit):
      - shopify: compare_at_price/image/requires_shipping par variante, sku, weight_grams, on_sale
      - woocommerce: on_sale, categories, variations + variants (attributs), fallback HTML enrichi (sku, notes, images, price_max)
      - wix: on_sale (V1 et V3) — fix 428 CATALOG_V1 intact
      - squarespace: parsing variantes réécrit (prix solde/barré, options agrégées, sku, stock par variante)
      - square: sku, review_count
      - generic (JSON-LD): brand, sku, gtin, aggregateRating, price_max, multi-images
      API /api/products: filtre on_sale=1 + tri discount, avec garde-fou rabais >90 % (prix barrés aberrants saisis en cents chez certains marchands, ex. okocreations.ca — 411 produits exclus)
      
      Frontend:
      - ProductDetail réécrit: lightbox plein écran (clavier, compteur), zoom, partage (Web Share/clipboard), étoiles de notation, badge −X %, notes de stock, options en chips, liste des déclinaisons (prix/barré/épuisé), fiche technique (SKU/GTIN/poids/dimensions), accordéons infos additionnelles, rail « Dans la catégorie »
      - StoreDetail: rail « En promotion », tri « Meilleures promos », stat prix moyen, réseaux sociaux étendus (TikTok/YouTube/Pinterest/LinkedIn/X + détection par domaine pour les socials en liste, ex. borealait.com qui n'affichait rien)
      - ProductCard: badge promo −X % + voile « Épuisé », prix barré masqué si aberrant
      - Icons: étoile, partage, chevrons, zoom, tiktok, youtube, pinterest, linkedin, X, globe
      - styles.css: ~400 lignes (badges, lightbox, variantes, specs, accordéons, rating)
      
      Validé: sync réel 6 boutiques (Shopify/Woo/Wix/Square/Generic) 0 erreur, test synthétique Squarespace OK, build tsc+vite OK, pm2 restart + healthchecks 8097 (promos assainies, fiches 200)
      
      Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
      Simon-Pierre Boucher · 2 files +117 −7
  5. Sat, Aug 22, 2026 1

  6. Wed, Aug 19, 2026 1

  7. Thu, Aug 13, 2026 1

    1. SEO complet (SSR + sitemaps + 301/410) · KA ID SSO + favoris hub · README refait
      …
      - fabrika/seo.py : rendu serveur sur toutes les routes — title/meta/canonical/
        hreflang fr-CA/OG/JSON-LD (Product, Offer, OnlineStore, BreadcrumbList,
        WebSite+SearchAction) + contenu HTML complet dans #root (hydraté par React)
      - Pages programmatiques /categorie/<slug>, /region/<slug> et combos (~350 pages)
        avec H1, stats (prix moyen/médian), grille produits, pagination, maillage
      - URLs produits slugées /produits/<slug>-<uid> (301 depuis l'ancien format),
        produits retirés → 410 Gone, uid inconnu → 404 (fini le soft-404)
      - robots.txt + sitemap.xml (index → pages/boutiques/produits-1..8, 40k/chunk,
        lastmod réel, cache 1h) ; GZip ; Cache-Control immutable sur /assets
      - Frontend : routes programmatiques miroirs (Catalog à dimensions verrouillées),
        liens slugés partout, setPageMeta (title/desc/canonical en navigation SPA)
      - fabrika/auth.py : « Se connecter avec KA ID » (SSO Groupe KA, JWT HS256 stdlib)
      - fabrika/hubfav.py + favorites.tsx : favoris « Mon univers Ka » poussés au hub
        central (HMAC signé), page /profil (hubprofile.py)
      - README ultra-détaillé : badges, nouvelles captures d'écran (desktop + mobile),
        section SEO/SSR, écosystème Groupe KA, structure du projet, API complète
      
      Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
      Simon-Pierre Boucher · 2 files +16 −2
  8. Wed, Aug 12, 2026 4

    1. Rapport de marché PDF (téléchargeable) + page stats détaillée
      …
      - Générateur PDF reportlab : page couverture pleine page aux couleurs de la
        marque, KPIs, histogramme des prix, tableaux catégories/régions/plateformes,
        origine A–E, top boutiques, méthodologie — endpoint /api/report.pdf (cache)
      - Bouton 'Télécharger le rapport PDF' sur la page /stats (en-tête + pied)
      - Page /stats enrichie : rail Nouveautés, disponibilité, complétude des données,
        mini-barres dans le tableau catégories, % dans l'histogramme
      - Nettoyage : 51 prix corrompus (parsing) purgés → prix moyen 327k$ → 293,73$
      - Caps défensifs sur les moyennes/max de prix (<= 500 000 $)
      
      Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
      Simon-Pierre Boucher · 1 file +10
    2. Enrichissement + pages boutiques landing + page statistiques
      …
      - 281 000+ produits, 1 204 boutiques actives (Bijoux Medusa incluse : 3 823
        produits ; catégorie bijoux 10 410 → 31 673)
      - Enrichissement boutiques : logo, couverture, description (3 220/3 224)
      - Enrichissement produits : re-catégorisation + héritage de catégorie boutique
      - Pages boutiques refaites en landing pages : héro couverture + logo, tuiles de
        stats de prix, chips catégories, recherche in-store, boutiques similaires
      - Nouvelle page /stats (à la lou-ka/auto-ka) : KPIs, histogramme des prix,
        tableau par catégorie, régions, croissance, origine A–E, top boutiques
      - API : /api/stats/extended (cache 10 min), fiche boutique enrichie
      
      Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
      Simon-Pierre Boucher · 3 files +115 −2
    3. Expansion majeure : 149 500+ produits, 3 131 boutiques, 17/17 régions
      …
      - Fallback anti-bot Scrapfly (530 candidats « morts » ressuscités, 233
        boutiques en échec débloquées) + connecteur Wix Stores (GraphQL storefront)
      - Répertoire CMAQ récolté via sessions Firecrawl (940 artisans)
      - Refonte frontend mobile-first : bottom nav, filtres en bottom sheet,
        galeries swipe, design éditorial resserré
      - Géocodage FSA→région (répertoire MAMH), 4 nouveaux balayages (urbain,
        manufacturiers, régions minces, marques), producteurs Saveurs BSL + Goûtez AT
      
      Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
      Simon-Pierre Boucher · 11 files +683 −151
    4. Fabri-Ka — agrégateur de produits québécois
      …
      Plateforme complète : pipeline de découverte provincial (30+ sources,
      2 510 boutiques QC vérifiées, classification d'origine A–E), connecteurs
      génériques par plateforme (Shopify, WooCommerce, Wix, Squarespace,
      Firecrawl), API FastAPI + SQLite FTS5, frontend React 18/Vite/TS,
      75 735 produits agrégés — en production sur www.fabri-ka.com.
      
      Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
      Simon-Pierre Boucher · 9 files +541
Menu

Theme