Trouve·Ka
A real search engine, built from scratch in Quebec
Not a metasearch: crawler, frontier, parser, classification, index, ranking and semantics are all homegrown — zero dependency on Google, Bing or Brave for results.
302K+
Pages indexed
14
KA sites indexed
4.6M
Frontier URLs
100%
Semantic coverage
9
Crawl workers / 5 nodes
~2–4 s
Crawl-to-searchable
Overview
Trouve·Ka is a real search engine — not a metasearch. Crawler, frontier, parser, Quebec classification, index, ranking, semantics: everything is built in-house, with no dependency on Google, Bing or Brave for results. Born as an open Quebec-web engine (64 high-authority seeds, 7,898 discovered domains), it pivoted on 2026-08-23 to become the search engine of Groupe Ka: it continuously indexes the ecosystem's 14 sites, fed by daily sitemap ingestion — the frontier alone exceeds 4.6M pending URLs.
The engine's motto: crawl continuously, index immediately, search immediately, improve asynchronously. Every fetched page is scored deterministically for Quebec relevance (TLDs, toponyms, postal codes, area codes, known organizations, language — no LLM in the hot path) and indexed inline in OpenSearch: searchable in about 2–4 seconds. Enrichment — domain authority, entities, embeddings, reranking — arrives afterwards via Redis Streams without ever blocking, with 100% semantic coverage of the index.
In production: 302,000+ pages indexed (and growing by 100K+ on good days), bilingual BM25 ranking with FR/EN synonyms (thermopompe ↔ heat pump), semantic search plus a dedicated reranker, and 258–425 ms measured latency with both active. The crawl is polite and self-healing: an identified TrouveKABot honoring robots.txt and crawl delays, SSRF guards, crawl-trap detection, and nine workers across five cluster nodes coordinated without an orchestrator through Postgres FOR UPDATE SKIP LOCKED — proven to survive node reboots on its own.
Key Features
Immediate indexing
Fetch → parse → score → index inline (OpenSearch refresh 1 s): a page is searchable seconds after being crawled; enrichment never blocks.
Deterministic Quebec scoring
TLDs, toponym gazetteer, postal codes, area codes, known organizations, JSON-LD and language — no LLM in the hot path, and the open-web mode is one config flag away.
Bilingual semantic ranking
BM25 FR/EN with bilingual synonyms + Quebec scores + domain authority + freshness + locality boost, then embeddings and a reranker on top.
Polite, transparent crawler
Identified TrouveKABot with a public page, robots.txt and Crawl-delay honored, per-host politeness locks, SSRF guard, crawl-trap detection.
Self-healing distributed crawl
Nine workers on five nodes with no orchestrator — Postgres SKIP LOCKED + Redis locks, SSH tunnels between nodes, watchdogs, proven reboot survival.
Real public metrics
No simulated counters, by project rule: /status and /stats expose the live engine, refreshed every 10 seconds.
Tech Stack
Engine
Semantics
Frontend
Trouve·Ka is live
The search engine of the Quebec web — part of the Groupe Ka ecosystem.