Barre de recherche vs Moteur de recherche : Le champ de saisie n'est pas le moteur
Une Barre de recherche est un composant UI — un <input type="search"> ou champ texte stylé — qui accepte une chaîne de requête. Elle n'est pas un moteur de recherche.
Rôles
| Composant | Responsabilité |
|---|---|
| Barre de recherche (Frontend) | Capture requête, fournit autocomplétion/suggestions, soumet à endpoint. |
| Moteur de recherche (Backend) | Explore, indexe, classe, récupère, retourne résultats (Google, Bing, Elasticsearch, Algolia, Meilisearch). |
Flux typique
- Utilisateur tape dans Barre de recherche.
- Client envoie
GET /search?q=…ouPOST /api/search. - Moteur de recherche traite requête → retourne résultats classés (JSON/HTML).
- Frontend rend résultats.
Améliorations courantes Barre de recherche
- Autocomplétion (correspondance préfixe depuis index).
- Résultats instantanés (AJAX débouncé).
- Facettes / filtres (catégorie, date, prix).
- Entrée vocale (
x-webkit-speech/ Web Speech API). - Recherches récentes, tendances, recherche scoped (site, repo, docs).
Options d'implémentation
- Hébergé : Algolia DocSearch, Google Programmable Search, Azure Cognitive Search.
- Auto-hébergé : Elasticsearch + Search UI, Meilisearch + Meilisearch UI, Typesense.
- Site statique : Lunr.js, FlexSearch, Pagefind (index côté client).
La barre de recherche est la question ; le moteur de recherche est la machine à réponses. Ne confondez pas l'interface avec l'infrastructure.
