--- title: BiblioReads created: 2026-06-07 updated: 2026-06-07 type: app tags: [catalogue, books, lecteur, epub, minimaliste, open-source, static] confidence: medium contested: false sources: [https://selfh.st/apps/?tag=Books, https://github.com/jeffshee/biblioreads] --- # 📜 BiblioReads > **Le lecteur de livres en ligne ultra-minimaliste** — uploadez un EPUB, lisez-le dans le navigateur. Pas de catalogue, pas de réseau social : juste la lecture. | Métadonnée | Valeur | | :--- | :--- | | **Site web** | [https://biblioreads.com](https://biblioreads.com) (démo publique) | | **GitHub** | [https://github.com/jeffshee/biblioreads](https://github.com/jeffshee/biblioreads) | | **License** | GPL-3.0 | | **Langage** | JavaScript (Node.js, Express, EPUB.js) | | **Étoiles GitHub** | 10 ⭐ | | **Dernière MAJ** | 2024-08 | | **Catégorie** | [[cat-books\|Books]] | ## Description BiblioReads est un **lecteur EPUB en ligne** radicalement simple : vous déposez un fichier `.epub` dans l'interface, et il s'ouvre dans le navigateur avec un **rendu soigné** (pagination, marque-pages, progression). Pas de base de données centrale, pas de comptes, pas de synchronisation cloud : la philosophie est celle d'un **Dropbox + liseuse** combinés. L'application utilise **EPUB.js** (la référence Mozilla) pour le rendu, et un backend **Node.js / Express** minimal pour servir les fichiers et stocker les **annotations locales** (localStorage du navigateur). Le code est léger (< 500 lignes effectives) et conçu pour être **forké et modifié** facilement — ce qui en fait un excellent point de départ pour qui veut un lecteur maison sans les 50 Mo de Calibre-Web. BiblioReads n'a **pas vocation à être un Calibre** : pas de gestion de bibliothèque, pas de métadonnées enrichies, pas d'OPDS, pas d'import Goodreads. C'est un **lecteur**, point. Idéal pour **héberger un petit kiosque EPUB** accessible depuis n'importe quel navigateur (PC, tablette, smartphone), sans rien de plus. **Points forts** : ultra-simple à déployer, code minimal et lisible, EPUB.js éprouvé, support multi-formats partiels (EPUB, PDF, MOBI via convert), idéal pour kiosques familiaux. **Points faibles** : projet peu étoilé (10 ⭐), dernière release vieille d'un an+, pas de catalogue distant, pas de multi-utilisateurs natif, pas de synchro entre appareils, ergonomie très basique (pas de thèmes, pas de recherche full-text), et **confiance limitée** sur la robustesse long terme. ## Installation ### Via Docker (placeholder communautaire) L'image officielle n'est pas toujours à jour ; privilégier un build local. ```yaml # docker-compose.yml services: biblioreads: build: https://github.com/jeffshee/biblioreads.git container_name: biblioreads restart: unless-stopped environment: - PORT=3000 - NODE_ENV=production volumes: - ./uploads:/app/uploads ports: - "3000:3000" ``` ### Installation manuelle (Node.js) ```bash git clone https://github.com/jeffshee/biblioreads.git cd biblioreads npm install npm run build npm start ``` Prérequis : **Node.js 18+**, **npm 9+**, **500 Mo de RAM** suffisent. ## Configuration 1. Builder l'application : `npm run build` (Webpack/Vite selon la version). 2. Définir le **dossier d'upload** (par défaut `./uploads`). 3. Lancer derrière un **reverse-proxy HTTPS** : ```nginx server { listen 443 ssl http2; server_name livres.example.com; ssl_certificate /etc/letsencrypt/live/livres.example.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/livres.example.com/privkey.pem; client_max_body_size 100M; # EPUB jusqu'à 100 Mo location / { proxy_pass http://localhost:3000; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; } } ``` 4. (Optionnel) Brancher un **stockage S3** ou un **dossier NFS** pour les EPUB. ## Alternatives ### Open source - [[app-calibre-web]] — Gestionnaire + lecteur, plus complet - [[app-librum-books]] — Lecteur EPUB avec synchro multi-appareils - [[app-mybibliotheca]] — Catalogue de bibliothèque, pas de lecteur - **ReaderMode / Pocket** — Lecture différée web, pas EPUB - **Kavita** (cf. [[app-kavita]]) — Lecteur manga/BD très complet ### Propriétaires - **Kindle Cloud Reader** — Lecteur Amazon officiel, fermé - **iBooks / Apple Books** — Lecteur Apple, fermé - **Google Play Livres** — Lecteur Google, fermé - **ReadEra** — App mobile Android, pas self-hostable ## Sécurité - ✅ **HTTPS** obligatoire pour servir les EPUB - ✅ **Limite de taille** d'upload côté reverse-proxy (ex. 100 Mo) - ✅ **Pas d'auth par défaut** : usage mono-utilisateur ou kiosque familial - ⚠️ **Pas d'auth native** : ajouter un reverse-proxy auth (BasicAuth, Authelia) si exposition publique - ⚠️ **EPUB = archives ZIP** : risque XSS si rendu sans sandbox, EPUB.js isole par défaut - ⚠️ **localStorage** : les annotations ne sont pas chiffrées au repos - ⚠️ **Confiance projet** : 10 ⭐, maintenance sporadique — prévoir un fork si critique ## Ressources - [Dépôt GitHub](https://github.com/jeffshee/biblioreads) - [Démo publique](https://biblioreads.com) - [EPUB.js](https://github.com/futurepress/epub.js) - [selfh.st — Books](https://selfh.st/apps/?tag=Books) ## Pages Liées - [[cat-books]] — Catégorie parente - [[app-calibre-web]] — Lecteur + gestionnaire plus complet - [[app-librum-books]] — Lecteur EPUB avec synchro cloud - [[recettes-docker-compose]] — Templates Docker - [[app-caddy]] — Reverse-proxy HTTPS