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

6.2 KiB


title: BookWyrm created: 2026-06-07 updated: 2026-06-07 type: app tags: [catalogue, activitypub-fediverse, livres, goodreads, django, fediverse, social] confidence: high contested: false sources: [https://selfh.st/apps/?tag=activitypub-fediverse, https://github.com/bookwyrm-social/bookwyrm, https://joinbookwyrm.com/]

📚 BookWyrm

Le réseau social de lecteurs fédéré : l'alternative éthique à Goodreads, basée sur ActivityPub, où vous pistez vos lectures, écrivez des critiques et discutez avec d'autres lecteurs — y compris depuis Mastodon.

Métadonnée Valeur
Site web https://joinbookwyrm.com
GitHub https://github.com/bookwyrm-social/bookwyrm
License AGPL-3.0
Langage principal Python (Django)
Étoiles GitHub 2 250
Dernière MAJ 2026-05
Catégorie cat-activitypub-fediverse

Description

BookWyrm est l'alternative éthique et fédérée à Goodreads développée depuis 2021 par une équipe de bénévoles sensibles à la culture du libre. Le principe : un réseau social centré sur la lecture, où vous tenez un journal de lectures (lu, en cours, à lire, abandonné), rédigez des critiques, notez les livres, créez des listes thématiques et discutez avec d'autres lecteurs.

La particularité fediverse : BookWyrm parle ActivityPub. Vous pouvez suivre un compte BookWyrm depuis Mastodon, et inversement — un compte Mastodon apparaît dans vos followers BookWyrm. Les critiques d'un livre publiées sur BookWyrm sont visibles depuis Mastodon, et les commentaires de vos amis Mastodon sous votre critique remontent sur BookWyrm. C'est un pont rare entre le monde littéraire et le microblogage.

Fonctionnalités principales : étagères (shelves) personnalisables, statuts de lecture (to-read, reading, read), critiques riches (markdown, spoilers masquables), listes collaboratives (type « les 100 meilleurs polars »), citations partagées, citations du jour, découverte par genres et tags, scrobbling (intégration OPDS), import/export depuis Goodreads, API pour intégrations tierces.

Points forts : UI claire et agréable, federation ActivityPub complète, alternative crédible à Goodreads (propriété d'Amazon), respect de la vie privée, communauté de lecteurs active.

Points faibles : stack Python/Django + PostgreSQL + Redis + Elasticsearch (lourd pour quelques utilisateurs), pas d'application mobile native (PWA), catalogue OpenLibrary parfois lent, et le réseau est fragmenté entre plusieurs instances.

Installation

Via Docker (recommandé)

L'image officielle est bookwyrm/bookwyrm et bookwyrm/celery-worker sur Docker Hub. La stack inclut PostgreSQL, Redis, Elasticsearch (optionnel mais recommandé).

# docker-compose.yml
services:
  web:
    image: bookwyrm/bookwyrm:latest
    restart: unless-stopped
    env_file: .env
    volumes:
      - bookwyrm_data:/app
    ports:
      - "8000:8000"
    depends_on:
      - postgres
      - redis
      - celery

  celery:
    image: bookwyrm/bookwyrm:latest
    restart: unless-stopped
    env_file: .env
    command: celery -A bookwyrm worker -l info
    depends_on:
      - postgres
      - redis

  postgres:
    image: postgres:16-alpine
    restart: unless-stopped
    environment:
      POSTGRES_DB: bookwyrm
      POSTGRES_USER: bookwyrm
      POSTGRES_PASSWORD: change-me
    volumes:
      - bookwyrm_db:/var/lib/postgresql/data

  redis:
    image: redis:7-alpine
    restart: unless-stopped
    volumes:
      - bookwyrm_redis:/data

volumes:
  bookwyrm_data:
  bookwyrm_db:
  bookwyrm_redis:

Installation manuelle

Voir la doc officielle : https://docs.joinbookwyrm.com/install-prod.html. Prévoir Python 3.11+, PostgreSQL 13+, Redis 7+, Elasticsearch 7+ (recommandé), Node.js, et un reverse-proxy (Nginx/Caddy).

Configuration

  1. Cloner le dépôt et copier .env.example vers .env, compléter DOMAIN, DATABASE_URL, REDIS_URL, EMAIL, OTEL_*.
  2. Migrer la base : python manage.py migrate.
  3. Migrer les données de base OpenLibrary : python manage.py initdb.
  4. Pré-compiler les assets : python manage.py collectstatic.
  5. Créer le superadmin : python manage.py admin_code.
  6. Lancer la stack, configurer le reverse-proxy HTTPS (Caddy ou Nginx avec WebSocket) et activer la federation (par défaut activée).

Alternatives

Open source

  • OpenReads — Suivi de lectures local, sans réseau social
  • MyLibro — Suivi de lectures, pas de réseau social fediverse
  • app-pixelfed — Pour d'autres types de partage créatif
  • app-friendica — Réseau multi-protocoles avec un faible volet livres
  • app-mastodon — Pour la partie microblogage / discussion

Propriétaires

  • Goodreads (Amazon) — Le modèle d'origine, public tracking publicitaire
  • The StoryGraph — Concurrent moderne, freemium, pas self-hostable
  • LibraryThing — Historique, freemium limité
  • Babelio — Francophone, pas self-hostable

Sécurité

  • Authentification : email + mot de passe, OAuth (Fediverse) — connectez-vous avec votre compte Mastodon
  • HTTPS obligatoire (HSTS)
  • Modération : signalements, blocage de comptes et d'instances, listes de blocage
  • Privacy : étagères privées possibles, listes « à cacher »
  • ⚠️ Federation : un compte BookWyrm public attire les bots, modérer les demandes de follow
  • ⚠️ Données OpenLibrary : la base est partagée, attention aux requêtes API
  • ⚠️ Stack : Elasticsearch + Postgres + Redis demande de la RAM (~ 4 Go minimum recommandé)

Ressources

Pages Liées