Hoarder : un gestionnaire de favoris self-hosted relié à Chat GPT !

Cela fait plusieurs mois que je cherche un service pour me permettre de gérer mes favoris. J’ai utilisé pendant longtemps un dossier fourre-tout sur Google Chrome puis Notion mais sans me satisfaire. Aujourd’hui, je vous présente Hoarder, une application auto-hébergée sur Docker pour organiser tous vos favoris.
Présentation de Hoarder : l’outil pour tout sauvegarder
Hoarder est une solution open source (dispo sur Github) qui transforme la gestion de vos contenus numériques en une expérience fluide et organisée. Que ce soit pour sauvegarder des liens, prendre des notes simples, ou conserver des fichiers comme des images et des PDF, Hoarder se positionne comme un outil complet pour centraliser vos données.
De mon côté, je cherchais une application pour conserver dans un coin tout ce que je peux lire sur internet. Cela peut aller d’un dashboard très bien pensé que je peux voir sur Home Assistant à un tutoriel pour installer quelque chose sur Proxmox. Une sortie de bordel organisé si on peut dire !

Par les fonctionnalités principales, on retrouve :
- Recherche texte complète sur tout le contenu sauvegardé
- Gestion de listes et mots-clés
- Liaison avec Chat GPT pour la génération des mots-clés
- Plugin Chrome et Firefox pour l’ajout rapide d’un lien
- Mode sombre
- Traduction en français
- Une application dispo sur iOS et sur Android
Installation et configuration de Hoarder
Comme d’habitude, nous allons installer cela via le docker compose proposé sur la doc officielle. Je vous mets le lien au cas où vous auriez des soucis avec le code ci-dessous.
version: "3.8"
services:
web:
image: ghcr.io/hoarder-app/hoarder:release
restart: unless-stopped
container_name: hoarder
volumes:
- hoarder:/data
ports:
- 3000:3000
environment:
NEXTAUTH_SECRET: #générer une chaine de caractères aléatoires
NEXTAUTH_URL: #adresse pour accéder à Hoarder (IP / reverse proxy)
MEILI_MASTER_KEY: #générer une chaine de caractères aléatoires
MEILI_ADDR: http://meilisearch:7700
BROWSER_WEB_URL: http://chrome:9222
OPENAI_API_KEY: #si vous souhaitez relier à Chat GPT
DATA_DIR: /data
chrome:
container_name: hoarder-chrome
image: gcr.io/zenika-hub/alpine-chrome:123
restart: unless-stopped
command:
- --no-sandbox
- --disable-gpu
- --disable-dev-shm-usage
- --remote-debugging-address=0.0.0.0
- --remote-debugging-port=9222
- --hide-scrollbars
meilisearch:
container_name: hoarder-meilisearch
image: getmeili/meilisearch:v1.11.1
restart: unless-stopped
environment:
MEILI_NO_ANALYTICS: "true"
volumes:
- meilisearch:/meili_data
volumes:
meilisearch:
hoarder:
Vous aurez besoin de compléter dans le code les variables d’environnement suivantes :
- NEXTAUTH_SECRET
- NEXTAUTH_URL
- MEILI_MASTER_KEY
- OPENAI_API_KEY
Liaison avec Chat GPT via API
Il est possible de connecter Hoarder à Chat GPT via les API. Cela permettra notamment de générer automatiquement les mots-clés en fonction du contenu de la page. Plutôt pratique non ?

Hoarder utilise le modèle gpt-4o-mini. Ce modèle est plutôt économique : le coût par analyse varie en fonction de la taille du contenu de chaque article. En moyenne, il est possible de générer des tags pour plus de 3 000 favoris pour moins de 1 dollar.
Vous pouvez donc alimenter votre compte Chat GPT avec 5 dollars et vous serez tranquille pour un moment (c’est ce que j’ai fait).
En bref
Je vous invite à essayer Hoarder sur votre serveur, si vous connaissez d’autres apps du genre, n’hésitez pas à me laisser un commentaire.