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

120 lines
5.2 KiB
Markdown

---
title: Shelfmark
created: 2026-06-07
updated: 2026-06-07
type: app
tags: [catalogue, books, ebook, audiobook, download, prowlarr, calibre, flask, python]
confidence: high
contested: false
sources: [https://selfh.st/apps/?tag=Books, https://github.com/calibrain/shelfmark]
---
# 🔍 Shelfmark
> **Le hub de recherche et de téléchargement multi-sources pour livres et audiobooks** — Une porte d'entrée unique vers Prowlarr, IRC, torrents, usenet et providers de métadonnées.
## 📋 Informations Générales
| Champ | Valeur |
| :--- | :--- |
| **Site web** | [github.com/calibrain/shelfmark](https://github.com/calibrain/shelfmark) |
| **GitHub** | [calibrain/shelfmark](https://github.com/calibrain/shelfmark) |
| **Licence** | MIT |
| **Langage** | Python (73,5%), TypeScript (25%) |
| **Étoiles GitHub** | 3,3k ⭐ |
| **Dernière MAJ** | 2026-05-14 |
| **Catégorie** | [[cat-books|Books]] |
## 📝 Description
**Shelfmark** est une **interface web self-hosted** qui sert de **hub unique** pour chercher, parcourir et **télécharger** des livres et des audiobooks depuis des sources hétérogènes. La philosophie : « vous apportez vos propres sources, providers de métadonnées et clients de téléchargement » pour bâtir une **centrale d'acquisition** qui s'intègre avec le reste de votre homelab.
L'app expose une **UI moderne**, supporte **multi-utilisateurs** avec un système de **demandes / approbations**, propose deux modes de recherche : **Direct** (interrogation directe des sources) ou **Universal** (passage par les providers Hardcover / Open Library / Google Books puis agrégation des releases correspondantes, recommandation officielle). Le **support audiobook** est complet, avec traitement dédié.
Shelfmark s'intègre nativement avec **Calibre**, [[app-calibre-web]], [[app-calibre-web-automated]] (CWA), [[app-grimmory]] et [[app-audiobookshelf]] : vous pouvez faire pointer le dossier de téléchargement vers l'**ingest de CWA** ou le **BookDrop de Grimmory** pour un pipeline automatisé. Un **mode Tor** est proposé en variante, pour les utilisateurs avancés.
> ⚠️ Le projet est annoncé **stable** en mai 2026 mais **n'est plus en maintenance active**. Préférez-le dans un rôle d'« automate secondaire » et gardez un œil sur les forks.
## 🚀 Installation
### Option 1 : Docker Compose (recommandé)
```yaml
# docker-compose.yml
services:
shelfmark:
image: ghcr.io/calibrain/shelfmark:latest
container_name: shelfmark
environment:
- PUID=1000
- PGID=1000
- TZ=Europe/Paris
- FLASK_PORT=8084
- INGEST_DIR=/books
- SEARCH_MODE=universal
ports:
- 8084:8084
volumes:
- ./config:/config
- ./books:/books # partagé avec CWA / Grimmory pour ingest auto
- ./downloads:/downloads
restart: unless-stopped
```
Premier démarrage : `http://localhost:8084`, créer le compte admin, configurer les sources (Prowlarr, IRC) et les providers de métadonnées.
### Option 2 : Variante Tor
```bash
curl -O https://raw.githubusercontent.com/calibrain/shelfmark/main/compose/docker-compose.tor.yml
docker compose -f docker-compose.tor.yml up -d
```
Nécessite `NET_ADMIN` + `NET_RAW` et `--user root`.
## ⚙️ Configuration
1. **Mode Universal** : activez Hardcover + Open Library + Google Books pour une recherche par métadonnées.
2. **Prowlarr** : pointez Shelfmark vers votre instance Prowlarr pour récupérer vos indexeurs.
3. **Ingest folder** : montez le même dossier que celui de CWA / Grimmory pour automatiser l'import.
4. **OIDC / SSO** : branchez Authentik / Keycloak pour la gestion multi-utilisateurs.
5. **Notifications** : approval workflow par utilisateur (utile en famille ou en petit groupe).
6. **CIFS** : sur montage SMB, ajoutez `nobrl` pour éviter les locks de base.
## 🔄 Alternatives
### Open Source
- [[app-calibre-web-automated]] — Cible en aval, ingestion et lecture
- [[app-grimmory]] — Plateforme unifiée en aval
- [[app-readarr]] — Manager d'ebooks style « Sonarr pour livres »
- [[app-lazylibrarian]] — Suivi d'auteurs et de séries
### Propriétaires
- **Amazon Kindle Store**
- **Audible** (pour les audiobooks)
- **Goodreads** (catalogage social)
## 🔐 Sécurité
- ✅ Authentification **OIDC / SSO** et proxy auth
- ✅ Multi-utilisateurs avec approbation
- ⚠️ Tor mode = nécessite `NET_ADMIN` : à n'activer que sur un réseau isolé
- ⚠️ Prowlarr expose souvent des sources sensibles : isolez sur un VLAN ou VPN
- ⚠️ Sauvegardez `./config` (SQLite) et les téléchargements critiques
- ⚠️ Le projet n'est plus en maintenance active : surveillez les forks et patchez manuellement
## 📚 Ressources
- [selfh.st — Books](https://selfh.st/apps/?tag=Books)
- [GitHub calibrain/shelfmark](https://github.com/calibrain/shelfmark)
- [Image GHCR](https://github.com/calibrain/shelfmark/pkgs/container/shelfmark)
- [Wiki officiel](https://github.com/calibrain/shelfmark/wiki)
## Pages Liées
- [[cat-books]] — Vue d'ensemble de la catégorie Books
- [[app-calibre-web-automated]] — Aval naturel pour l'ingest
- [[app-grimmory]] — Autre aval possible
- [[app-audiobookshelf]] — Spécialisé audiobooks
- [[recettes-docker-compose]] — Templates Docker