128 lines
6.4 KiB
Markdown
128 lines
6.4 KiB
Markdown
---
|
|
title: Mobilizon
|
|
created: 2026-06-07
|
|
updated: 2026-06-07
|
|
type: app
|
|
tags: [catalogue, activitypub-fediverse, events, meetup, framasoft, fediverse, elixir, phoenix]
|
|
confidence: high
|
|
contested: false
|
|
sources: [https://selfh.st/apps/?tag=activitypub-fediverse, https://framagit.org/framasoft/mobilizon]
|
|
---
|
|
|
|
# 📅 Mobilizon
|
|
|
|
> **La plateforme d'événements fédérée par Framasoft** — l'alternative éthique à Meetup et Facebook Events, où chaque instance gère ses groupes et communique en ActivityPub.
|
|
|
|
## 📋 Informations Générales
|
|
|
|
| Champ | Valeur |
|
|
| :--- | :--- |
|
|
| **Site web** | [mobilizon.org](https://mobilizon.org/) |
|
|
| **GitHub / Framagit** | [framasoft/mobilizon](https://framagit.org/framasoft/mobilizon) |
|
|
| **Licence** | AGPL-3.0 (avec clause éthiques) |
|
|
| **Langage** | Elixir, Phoenix, Vue.js, GraphQL |
|
|
| **Étoiles GitHub** | 137 ⭐ |
|
|
| **Dernière MAJ** | 2026-05 |
|
|
| **Catégorie** | [[cat-activitypub-fediverse\|ActivityPub / Fediverse]] |
|
|
|
|
## 📝 Description
|
|
|
|
**Mobilizon** est le projet de **plateforme d'événements fédérée** porté initialement par **Framasoft**, l'association française qui a popularisé le slogan "dégooglisons Internet". L'objectif est limpide : offrir un équivalent de **Meetup, Eventbrite ou Facebook Events** mais **décentralisé, sans traque publicitaire, et parlant nativement ActivityPub**.
|
|
|
|
L'application permet de créer des **groupes** (équivalent Meetup), d'y publier des **événements** (ponctuels ou récurrents), de gérer les **inscriptions** (libres, sur validation, ou payantes via Stripe), de tenir un **agenda public**, et de **discuter** autour des événements. Les événements sont des **objets ActivityPub** : depuis votre instance Mobilizon, vos abonnés Mastodon voient l'événement dans leur timeline, peuvent répondre avec leur compte, et l'événement s'affiche sur les agendas fédérés de leurs serveurs.
|
|
|
|
L'interface utilisateur est soignée, en **Vue.js 3 + Apollo GraphQL** : carte interactive des événements, recherche géographique, export iCal, notifications par email, modération. Le backend est en **Elixir/Phoenix** avec **PostgreSQL** et **PostGIS** pour la géolocalisation. La stack est **lourde** (Mobilizon est gourmand en RAM, ~1-2 Go minimum) mais le projet fournit un packaging Docker et un Ansible role bien maintenus.
|
|
|
|
Le projet a été **transféré en 2023 de Framasoft à l'association Kaihuri**, qui en assure désormais la gouvernance communautaire, mais Framasoft reste contributeur actif. Mobilizon a été traduit en français, anglais, allemand, espagnol, italien et de nombreuses autres langues, ce qui en fait l'une des plateformes Fediverse les plus accessibles au grand public.
|
|
|
|
## 🚀 Installation
|
|
|
|
### Option recommandée : Docker Compose (officiel)
|
|
|
|
```yaml
|
|
# docker-compose.yml
|
|
services:
|
|
mobilizon:
|
|
image: registry.frame.wf/mobilizon/mobilizon:latest
|
|
container_name: mobilizon
|
|
restart: unless-stopped
|
|
environment:
|
|
- MOBILIZON_INSTANCE_NAME=Mon Mobilizon
|
|
- MOBILIZON_INSTANCE_URL=https://events.example.org
|
|
- MOBILIZON_DATABASE_URL=postgresql://mobilizon:***@db/mobilizon
|
|
- MOBILIZON_SECRET_KEY_BASE=changez-moi-avec-phx-gen-secret
|
|
- MOBILIZON_LISTEN_IP=0.0.0.0
|
|
- MOBILIZON_PORT=4000
|
|
depends_on:
|
|
- db
|
|
ports:
|
|
- "4000:4000"
|
|
volumes:
|
|
- ./uploads:/var/lib/mobilizon/uploads
|
|
|
|
db:
|
|
image: postgres:15-alpine
|
|
container_name: mobilizon-db
|
|
restart: unless-stopped
|
|
environment:
|
|
- POSTGRES_USER=mobilizon
|
|
- POSTGRES_PASSWORD=*** - POSTGRES_DB=mobilizon
|
|
volumes:
|
|
- ./pgdata:/var/lib/postgresql/data
|
|
```
|
|
|
|
### Option 2 : Ansible (YunoHost, mother-of-all-self-hosting)
|
|
|
|
```bash
|
|
git clone https://github.com/mother-of-all-self-hosting/ansible-role-mobilizon.git
|
|
cd ansible-role-mobilizon
|
|
ansible-playbook -i inventory playbook.yml
|
|
```
|
|
|
|
## ⚙️ Configuration Initiale
|
|
|
|
1. **Choisir un domaine dédié** (ex. `events.example.org`) — Mobilizon ne coexiste pas bien avec d'autres apps sur le même sous-domaine.
|
|
2. **Configurer HTTPS** (Caddy/Traefik/Nginx avec Let's Encrypt).
|
|
3. **Premier compte admin** : depuis l'interface web, créer un compte qui devient administrateur.
|
|
4. **Configurer la fédération** : tester en partageant un événement vers un compte Mastodon distant.
|
|
5. **Activer la géolocalisation** : PostGIS doit être chargé dans la base, normalement inclus dans l'image officielle.
|
|
6. **Modération** : configurer les instances bloquées et la politique de signalement.
|
|
7. **Sauvegardes** : `pg_dump` quotidien + volume `uploads/`.
|
|
|
|
## 🔄 Alternatives
|
|
|
|
### Open Source
|
|
- [[app-gancio]] — Alternative italienne à Mobilizon, plus légère, par la communauté Pleroma.
|
|
- [[app-gancio]] (doublon) — voir ci-dessus.
|
|
- [[app-framaforms]] — Sondages, pas événements.
|
|
- [[app-mastodon]] — Microblogging, pas événements.
|
|
- [[app-funkwhale]] — Audio fédéré (autre cas d'usage).
|
|
|
|
### Propriétaires (ce que cette app remplace)
|
|
- **Meetup** — modèle centralisé, payant pour les communautés, traque.
|
|
- **Eventbrite** — commissions sur les billets payants.
|
|
- **Facebook Events** — couplé à Meta, profilage des invités.
|
|
- **OpenAgenda** — français, mais non fédéré.
|
|
- **Billetweb** — français, sans réseau social.
|
|
|
|
## 🔐 Sécurité
|
|
|
|
- **Authentification** : locale (email + mot de passe), **2FA TOTP** native, OAuth via Mastodon pour lier un compte.
|
|
- **HTTPS obligatoire** : la fédération ActivityPub et l'API GraphQL doivent transiter en TLS.
|
|
- **Anti-spam** : Captcha sur les inscriptions publiques, **Akismet** intégrable, **bannissement d'instance** par l'admin.
|
|
- **Modération** : par événement et par groupe, signalements remontés à l'admin d'instance, **système de confiance** configurable.
|
|
- **RGPD** : Mobilizon permet l'export et la suppression de compte conformes RGPD, ce qui est important pour les instances associatives françaises.
|
|
- **Webhook Stripe** : si vous activez les événements payants, sécurisez l'endpoint webhook avec le secret Stripe.
|
|
|
|
## 📚 Ressources
|
|
|
|
- [Site officiel Mobilizon](https://mobilizon.org/)
|
|
- [Documentation Mobilizon](https://docs.mobilizon.org/)
|
|
- [Framagit — Source code](https://framagit.org/framasoft/mobilizon)
|
|
- [Ansible role mother-of-all-self-hosting](https://github.com/mother-of-all-self-hosting/ansible-role-mobilizon)
|
|
|
|
## Pages Liées
|
|
- [[cat-activitypub-fediverse]] — Catégorie parente
|
|
- [[app-mastodon]] — Interopérable nativement
|
|
- [[recettes-docker-compose]] — Templates Docker
|