---
title: NeoDB
created: 2026-06-07
updated: 2026-06-07
type: app
tags: [catalogue, activitypub-fediverse, catalogue, livres, films, musique, jeux, python, fediverse]
confidence: medium
contested: false
sources: [https://selfh.st/apps/?tag=activitypub-fediverse, https://neodb.social/, https://github.com/neodb-social/neodb]
---

# 📚 NeoDB

> **Le catalogue social de médias fediverse** : marquez et critiquez livres, films, séries, musique, podcasts et jeux vidéo sur une plateforme ActivityPub, alternative libre à Goodreads / Letterboxd / Last.fm.

| Métadonnée | Valeur |
| :--- | :--- |
| **Site web** | [https://neodb.social](https://neodb.social) |
| **GitHub** | [https://github.com/neodb-social/neodb](https://github.com/neodb-social/neodb) |
| **License** | AGPL-3.0 |
| **Langage principal** | Python (Django) |
| **Étoiles GitHub** | 62 ⭐ |
| **Dernière MAJ** | 2026-05 |
| **Catégorie** | [[cat-activitypub-fediverse]] |

## Description

NeoDB (prononcer « Neo-D-B », pour « Network of DataBase ») est un **catalogue social multi-médias** qui centralise livres, films, séries, musique, podcasts et jeux vidéo sur une seule instance. Inspiré de **Douban** (le Goodreads chinois), le projet vise à offrir une expérience « Letterboxd + Goodreads + Last.fm » unifiée, tout en parlant ActivityPub.

Chaque utilisateur peut **marquer** un média (lu, vu, écouté, joué, envie), lui attribuer une **note** (1 à 5) et publier une **critique** ou un **commentaire court**. Le tout est **fédéré** : un compte NeoDB (`@pseudo@neodb.social`) peut être suivi depuis Mastodon, et la critique d'un livre sera diffusée dans la timeline de vos followers mastodontes.

NeoDB se distingue par son **modèle de données unifié** : un même type de schéma (title, cover, date, genres, …) est utilisé pour tous les types de médias, ce qui permet des **listes thématiques** transversales (« mes œuvres féministes de 2024 » mélangeant livres et films). Le projet intègre aussi un **scraper de métadonnées** qui récupère les informations depuis Goodreads, Google Books, TMDB, Spotify, IGDB, etc.

**Points forts** : couvre tous les types de médias, fediverse depuis le début, multilingue, API ouverte, scraping multi-sources.

**Points faibles** : projet jeune, encore en stabilisation, documentation en chinois/anglais parfois lacunaire, le scraping de Goodreads (utilisé par défaut) peut casser à tout moment, communauté plus restreinte que BookWyrm.

## Installation

### Via Docker (recommandé)

L'image officielle est disponible sur GitHub Container Registry : `ghcr.io/neodb-social/neodb:latest`.

```yaml
# docker-compose.yml
services:
  app:
    image: ghcr.io/neodb-social/neodb:latest
    container_name: neodb
    restart: unless-stopped
    ports:
      - "8000:8000"
    environment:
      DJANGO_SECRET_KEY: "change-me-random-50-chars"
      DJANGO_SITE_URL: "https://neodb.example.com"
      DJANGO_ALLOWED_HOSTS: "neodb.example.com"
      DB_HOST: db
      DB_NAME: neodb
      DB_USER: neodb
      DB_PASSWORD: change-me
    depends_on:
      - db

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

  redis:
    image: redis:7-alpine
    restart: unless-stopped

volumes:
  db_data:
```

### Installation manuelle

1. Installer Python 3.11+ et PostgreSQL 14+
2. Cloner le dépôt : `git clone https://github.com/neodb-social/neodb.git`
3. Créer un venv et installer les dépendances : `pip install -e .`
4. Configurer `neodb/settings.py` ou variables d'environnement
5. `python manage.py migrate` puis `python manage.py createsuperuser`
6. Servir derrière Gunicorn + Nginx

## Configuration

1. Accéder à l'installateur et créer le super-utilisateur
2. Configurer le **scraper de métadonnées** dans l'admin (priorité des sources : Google Books, TMDB, Spotify, IGDB)
3. Activer la **fédération ActivityPub** : par défaut sur
4. Créer des **listes** partagées (ex. « Mes lectures 2026 », « Films vus en 2026 »)
5. Brancher des **comptes relais** Mastodon si vous voulez que vos followers voient vos marques

## Alternatives

### Open source
- [[app-bookwyrm]] — spécialisé livres (pas films/musique/jeux)
- [[app-funkwhale]] — musique avec API Subsonic, pas de critiques
- **Letterboxd** — films uniquement, pas fediverse, mais réseau social énorme
- **Openreads** — livres uniquement, pas fediverse
- **Mal** — anime/manga, pas fediverse

### Propriétaires
- Goodreads (Amazon) — livres
- Letterboxd (propriétaire) — films
- Last.fm — musique
- Backloggd — jeux vidéo

## Sécurité

- **HTTPS obligatoire** (Fédération)
- **Scrapping** : la couche de récupération des métadonnées externes peut envoyer des requêtes à des services tiers, vérifier la configuration
- **Limiter les requêtes de scraping** via les rate-limits de l'admin
- **Quotas par utilisateur** : NeoDB permet de plafonner le nombre de marks/jour
- **Sauvegardes** : la base PostgreSQL (favoris, marques, critiques) suffit ; pas de gros fichiers binaires stockés

## Ressources
- Site officiel : [neodb.social](https://neodb.social)
- Documentation : [github.com/neodb-social/neodb#readme](https://github.com/neodb-social/neodb#readme)
- Instance publique : [neodb.social](https://neodb.social) pour tester avant d'héberger
- Communauté : Matrix `#neodb:matrix.org`

## Pages Liées
- [[cat-activitypub-fediverse]]
- [[recettes-docker-compose]]
- [[app-bookwyrm]]
