Files
wiki/Catalogue-Self-Hosted/apps/app-biblioreads.md
T
2026-06-09 18:40:21 +02:00

5.5 KiB


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 (démo publique)
GitHub 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

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.

# 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)

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 :
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;
    }
}
  1. (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

Pages Liées