SPB Git

spb/trouve-ka Public

Trouve-KA — moteur de recherche web indépendant, Québec-first. Crawler distribué, index OpenSearch, ranking bilingue, galerie d'images. En prod : www.trouve-ka.com

Python 76.8% TypeScript 15.7% SQL 3.9% Shell 1.4% CSS 1.3% Dockerfile 0.7%
1.4 KB · 52 lines tsx
Raw Blame History
1/**2 * Trouve-KA — wordmark « Trouve » + chip « KA » (signature Groupe KA)3 * Author: Simon-Pierre Boucher4 * Contact: contact@spboucher.ai5 */67import { cn } from "@/lib/utils";89interface WordmarkProps {10  /**11   * `header` : encre sur papier, chip encre/texte lime (hover rotate-0 via12   * `group` sur le lien parent). `footer` : papier sur encre, chip lime.13   * `hero` : géant, pour la homepage.14   */15  variant?: "header" | "footer" | "hero";16  className?: string;17}1819export function Wordmark({ variant = "header", className }: WordmarkProps) {20  const base =21    variant === "footer"22      ? "text-[26px] text-paper"23      : variant === "hero"24        ? "text-5xl text-ink sm:text-6xl"25        : "text-[21px] text-ink sm:text-[24px]";2627  return (28    <span29      className={cn(30        "gk-display inline-flex items-baseline gap-[5px] font-bold tracking-[-0.04em]",31        base,32        className,33      )}34    >35      Trouve36      {variant === "footer" ? (37        <span className="inline-block -rotate-2 rounded-md bg-lime px-[7px] pb-[2px] text-ink">38          KA39        </span>40      ) : variant === "hero" ? (41        <span className="inline-block -rotate-2 rounded-lg bg-ink px-3 pb-1 text-lime">42          KA43        </span>44      ) : (45        <span className="inline-block -rotate-2 rounded-md bg-ink px-[7px] pb-[2px] text-lime transition-transform duration-200 group-hover:rotate-0">46          KA47        </span>48      )}49    </span>50  );51}52