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

139 lines
5.7 KiB
Markdown

---
title: Lemmy
created: 2026-06-07
updated: 2026-06-07
type: app
tags: [catalogue, activitypub-fediverse, agregateur-liens, reddit, rust, fediverse]
confidence: high
contested: false
sources: [https://selfh.st/apps/?tag=activitypub-fediverse, https://github.com/LemmyNet/lemmy, https://join-lemmy.org/]
---
# 🦬 Lemmy
> **L'agrégateur de liens fédéré open source** : communautés, votes, commentaires à la Reddit, mais interopérable avec Mastodon, Peertube et tout le Fediverse via ActivityPub.
| Métadonnée | Valeur |
| :--- | :--- |
| **Site web** | [https://join-lemmy.org](https://join-lemmy.org) |
| **GitHub** | [https://github.com/LemmyNet/lemmy](https://github.com/LemmyNet/lemmy) |
| **License** | AGPL-3.0 |
| **Langage principal** | Rust, TypeScript (Inferno) |
| **Étoiles GitHub** | 14 200 ⭐ |
| **Dernière MAJ** | 2026-05 |
| **Catégorie** | [[cat-activitypub-fediverse]] |
## Description
Lemmy est un **agrégateur de liens communautaire** dans la veine de Reddit, mais entièrement **fédéré** via ActivityPub. Chaque instance héberge des « communautés » (l'équivalent des subreddits) ; les utilisateurs d'une instance peuvent suivre, voter et commenter dans les communautés d'une autre instance sans créer de compte dessus.
L'interface utilisateur est écrite en Inferno (le portage React en Rust) et propose l'expérience Reddit classique : fils chauds / nouveaux / top, votes positifs/négatifs, commentaires arborescents imbriqués, modérateurs par communauté, tags, NSFW paramétrable. Le backend en Rust donne d'excellentes performances (souvent < 500 Mo RAM pour une petite instance).
La federation ActivityPub rend Lemmy particulièrement attractif : un compte `@user@lemmy.world` peut commenter un pouet Mastodon, suivre une chaîne PeerTube, ou s'abonner à une communauté. Lemmy et **Mastodon** communiquent pleinement (les utilisateurs Mastodon voient les posts Lemmy dans leur timeline, et inversement).
**Points forts** : code en Rust (rapide, sûr), très économe en RAM, federation ActivityPub complète (plutôt rare pour un « Reddit-like »), UI soignée.
**Points faibles** : instance de référence (`lemmy.world`) instable à ses débuts, petit écosystème de clients mobiles, recherche federated limitée, et la scission de la communauté (création de `lemm.ee`, `fedia.io` etc.) a fragmenté le réseau.
## Installation
### Via Docker (recommandé)
L'image officielle est `lemmy/lemmy` sur Docker Hub. Lemmy est accompagné de `Lemmy-UI` (frontend Inferno) et d'un `Pictrs` (serveur d'images).
```yaml
# docker-compose.yml
services:
lemmy:
image: lemmy/lemmy:0.19
restart: unless-stopped
ports:
- "127.0.0.1:8536:8536"
volumes:
- ./lemmy.hjson:/config/config.hjson
- lemmy_vol:/app/volumes
depends_on:
- postgres
lemmy-ui:
image: lemmy/lemmy-ui:0.19
restart: unless-stopped
ports:
- "127.0.0.1:1234:1234"
environment:
LEMMY_UI_LEMMY_INTERNAL_HOST: lemmy:8536
LEMMY_UI_LEMMY_EXTERNAL_HOST: lemmy.example.com
pictrs:
image: asonix/pictrs:0.5
restart: unless-stopped
volumes:
- pictrs_vol:/mnt
environment:
PICTRS__DATABASE_URL: postgresql://pictrs:change-me@postgres:5432/pictrs
postgres:
image: postgres:16-alpine
restart: unless-stopped
environment:
POSTGRES_USER: lemmy
POSTGRES_PASSWORD: change-me
POSTGRES_DB: lemmy
volumes:
- lemmy_db:/var/lib/postgresql/data
volumes:
lemmy_db:
lemmy_vol:
pictrs_vol:
```
### Installation manuelle
Compilation native : installer Rust stable, Node.js 18+, PostgreSQL 14+, et suivre `https://join-lemmy.org/docs/administration/install.html`. Réserver ~2 Go RAM minimum.
## Configuration
1. Copier `config.hjson` depuis le dépôt : `wget https://raw.githubusercontent.com/LemmyNet/lemmy/main/config/defaults.hjson`.
2. Éditer `config.hjson` : `hostname`, `database_url`, `pictrs_url`, `federation.enabled`, SMTP.
3. Démarrer la stack, puis créer l'admin via l'API : `curl -X POST .../api/v3/user/register`.
4. Configurer le reverse-proxy HTTPS (Traefik) en pointant `/` sur lemmy-ui (port 1234) et `/api`, `/pictrs`, `/federation` sur lemmy (port 8536).
## Alternatives
### Open source
- [[app-mastodon]] — Microblogage fédéré (suit aussi Lemmy via ActivityPub)
- **Mbin** — Agrégateur + microblogage, fork communautaire de Lemmy
- **Kbin** — Précédent, fusionné dans Mbin
- **Sublinks** — Agrégateur fédéré, en cours de développement
### Propriétaires
- **Reddit** — Modèle d'origine, centralisé, propriétaire de 2023
- **Hacker News** — Sans federation, ni comptes
- **Tildes** — Communauté fermée non self-hostable
## Sécurité
-**Authentification** : email + mot de passe, 2FA TOTP, OAuth2 via applications tierces
-**Modération** : admins globaux + modérateurs par communauté, signalements, listes de blocage
-**HTTPS** obligatoire en federation (échec sinon)
-**NSFW** : marqué par communauté, masquable par défaut
- ⚠️ **Pictrs** : taille max d'image paramétrable, attention au stockage
- ⚠️ **Flood** : limiter les inscriptions par IP / Captcha (intégré)
- ⚠️ **Federation sortante** : peut envoyer beaucoup de trafic si votre communauté devient populaire
## Ressources
- [Site officiel](https://join-lemmy.org)
- [Documentation admin](https://join-lemmy.org/docs/)
- [GitHub LemmyNet/lemmy](https://github.com/LemmyNet/lemmy)
- [Liste d'instances](https://join-lemmy.org/instances)
## Pages Liées
- [[cat-activitypub-fediverse]] — Catégorie parente
- [[app-mastodon]] — Federation transparente entre les deux
- [[app-peertube]] — Vidéo fédérée du même écosystème
- [[app-traefik]] — Reverse-proxy HTTPS
- [[recettes-docker-compose]] — Templates Docker