Initial vault setup
This commit is contained in:
@@ -0,0 +1,93 @@
|
||||
---
|
||||
title: Hister
|
||||
created: 2026-06-08
|
||||
updated: 2026-06-08
|
||||
type: app
|
||||
tags: [catalogue, search, self-hosted, go]
|
||||
confidence: medium
|
||||
contested: false
|
||||
sources:
|
||||
- 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
|
||||
```yaml
|
||||
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
|
||||
```bash
|
||||
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
|
||||
- Code : https://github.com/asciimoo/hister
|
||||
- Site : https://hister.org/
|
||||
- Auteur (asciimoo) : https://github.com/asciimoo
|
||||
- Issues : https://github.com/asciimoo/hister/issues
|
||||
|
||||
## Pages Liées
|
||||
- [[cat-search]] — Catégorie parente
|
||||
- [[app-meilisearch]] — Moteur de recherche généraliste
|
||||
- [[app-searxng]] — Méta-moteur Web
|
||||
- [[recettes-docker-compose]] — Modèles de stacks
|
||||
Reference in New Issue
Block a user