---
title: Search
created: 2026-06-08
updated: 2026-06-08
type: category-overview
tags: [catalogue, search, self-hosted]
confidence: high
sources: [https://selfh.st/apps/?tag=170]
---

# 🔍 Search (moteurs de recherche internes)

> **2 applications** de moteur de recherche auto-hébergeables, basées sur le tag `Search` (id=170) de [selfh.st/apps](https://selfh.st/apps/?tag=170).
> Catégorie 100% documentée : 2/2 ✅.

## Vue d'ensemble

Le tag `Search` de selfh.st regroupe les **moteurs de recherche "internes"** : on alimente le moteur avec son propre corpus (documents, sites visités, base de connaissances) et on cherche dedans. Distincts des **moteurs de recherche web** (cat-search-engines).

- **[[app-meilisearch]]** : moteur de recherche full-text API-first, ultra-rapide, typo-tolerant, français, 58k⭐.
- **[[app-hister]]** : moteur de recherche pour historique de navigation, content-based.

## Tableau comparatif

| # | App | Langage | Stars | MAJ | License | Spécialité |
|---|-----|---------|------:|-----|---------|------------|
| 1 | [[app-meilisearch]] | Rust | 58007 | 2026-06 | MIT | API search, typo-tolerant, multi-langue |
| 2 | [[app-hister]] | Go | 1169 | 2026-06 | MIT | Search history web, content-based |

## Recommandations par cas d'usage

### 🏆 Pour indexer une base de docs / produits / users
- **[[app-meilisearch]]** : la référence moderne. Largement adopté (DocSearch, Algolia-killer open source). Supporte facettes, géo, typo-tolerance, ranking custom. Excellent pour e-commerce, blogs, KB.

### 🌐 Pour retrouver un site déjà visité
- **[[app-hister]]** : indexation full-text de votre historique de navigation, content-based (pas juste title/URL). Alternative à Wayback Machine locale.

## Architecture type

```yaml
# Meilisearch
services:
  meilisearch:
    image: getmeili/meilisearch:v1.10
    restart: unless-stopped
    environment:
      - MEILI_MASTER_KEY=${MEILI_KEY}
      - MEILI_ENV=production
      - MEILI_NO_ANALYTICS=true
    labels:
      - traefik.enable=true
      - traefik.http.routers.meili.rule=Host(`search.mondomaine.fr`)
      - traefik.http.routers.meili.tls.certresolver=letsencrypt
    volumes:
      - meili-data:/meili_data

volumes:
  meili-data:
```

## Concepts

- **Typo-tolerance** : capacité à matcher "macnine" → "machine".
- **Faceting** : regroupement par catégorie (tags, date, type).
- **Ranking rules** : ordre d'importance (typo > words > proximity > attribute > exactness).
- **Filterable attributes** : champs sur lesquels on peut filtrer (catégorie, date).
- **Search-as-you-type** : résultats en temps réel à la frappe.

## Sécurité

- **API key** : ne JAMAIS exposer Meilisearch sans master key, les API keys sont des JWT.
- **Tenant keys** : Meilisearch 1.5+ supporte les tenant tokens (clés par utilisateur).
- **Backups** : snapshot régulier (commande `meilisearch --snapshot`).
- **Network exposure** : par défaut sur 7700, à protéger par reverse proxy + auth.

## Alternatives

- **Algolia** : propriétaire, leader, excellent UX.
- **Elasticsearch** : plus puissant, plus complexe, plus lourd (Java/JVM).
- **Typesense** : alternative open source à Algolia, Go.
- **Sonic** : Rust, minimaliste, recherche par codes.
- **Tantivy** : moteur Rust bas-niveau (utilisé par Quickwit).
- **Quickwit** : log search, pas adapté au cas "docs".

## Pages Liées

- [[cat-search-engines|Search Engines]] — Pour la recherche web
- [[cat-document-management|Document Management]] — Cas d'usage typique Meilisearch
- [[cat-ai|IA]] — Embeddings + vector search = nouveau paradigme
