Files
2026-06-09 18:40:21 +02:00

4.1 KiB

title, created, updated, type, tags, confidence, contested, sources
title created updated type tags confidence contested sources
Hister 2026-06-08 2026-06-08 app
catalogue
search
self-hosted
go
medium false
https://hister.org
https://github.com/asciimoo/hister

Hister 📚

Moteur de recherche full-text ultra-léger pour indexer votre historique de navigation et vos bookmarks.

Métadonnée Valeur
Site web https://hister.org/
GitHub https://github.com/asciimoo/hister
License AGPL-3.0
Langage Go
Étoiles 1 169
Dernière MAJ 2026-06-07
Catégorie cat-search

Description

Hister est un moteur de recherche minimaliste en Go qui indexe le contenu complet des pages web que vous avez visitées. C'est l'auto-hébergement de votre propre « Google personnel » qui tourne en local et que même Google ne peut pas indexer. Idéal pour retrouver un article lu il y a 6 mois, une doc technique noyée dans 500 onglets ou une recette découverte sur un blog éphémère.

Le projet est né en 2012 sous l'impulsion d'asciimoo (développeur de Searx) et reste maintenu régulièrement. L'architecture est volontairement simple : un binaire Go unique, un index BoltDB embarqué, pas de dépendances externes. L'indexation se fait via une commande CLI qui parse le HTML et extrait le texte, les titres, les métadonnées.

Hister se distingue de Meilisearch/Elasticsearch par sa simplicité extrême : aucune config, pas de serveur à administrer, c'est un outil CLI + un mini-serveur Web. C'est le couteau suisse pour qui veut retrouver ce qu'il a vu sur le Web sans dépendre d'un service tiers (Google History, Pocket, etc.).

Installation

Docker Compose

services:
  hister:
    image: asciimoo/hister:latest
    container_name: hister
    command: serve --port 4444 --host 0.0.0.0
    environment:
      - HISTER_INDEX=/data/hister.db
    volumes:
      - ./index:/data
      - ./pages:/pages:ro
    ports:
      - "4444:4444"
    labels:
      - traefik.enable=true
      - traefik.http.routers.hister.rule=Host(`history.example.com`)
      - traefik.http.routers.hister.entrypoints=websecure
      - traefik.http.routers.hister.tls.certresolver=letsencrypt
      - traefik.http.services.hister.loadbalancer.server.port=4444
    restart: unless-stopped

CLI natif

go install github.com/asciimoo/hister@latest
hister index --db ~/hister.db https://example.com
hister serve --db ~/hister.db

Configuration

  1. Compiler ou installer le binaire hister (Go 1.21+ requis).
  2. Importer vos URLs : hister index <url1> <url2>... ou un fichier urls.txt avec une URL par ligne.
  3. (Optionnel) Connecter Wallabag / Linkding / Shaarli pour indexer automatiquement les articles sauvegardés.
  4. Lancer le serveur Web : hister serve --port 4444 --host 0.0.0.0.
  5. Accéder à l'UI sur http://localhost:4444 et lancer des recherches typo-tolérantes.

Alternatives

  • Open source : app-meilisearch (plus puissant, multi-langage), Sonic (search-as-you-type), Bleve (lib Go), Recoll (indexation desktop), Ripgrep + ugrep (CLI), Connectors/Shaarli (bookmarks), Linkding (bookmarks+tagging), Hoarder (Telegram bookmarking).
  • Propriétaire : Google History (fermé, cloud), Evernote Web Clipper, Notion Web Clipper, Raindrop.io, Pocket.

Sécurité

  • Stockage 100 % local : aucune donnée envoyée à un tiers, conforme RGPD par construction.
  • BoltDB chiffré au niveau filesystem (LUKS, ZFS) pour protéger l'historique sensible.
  • Pas d'auth intégrée : prévoir un reverse proxy avec Authelia / BasicAuth si exposition publique.
  • Rate-limiting recommandé sur le port 4444 pour éviter l'énumération.
  • Snapshots réguliers de hister.db via cron + rsync pour archivage.

Ressources

Pages Liées