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

114 lines
5.0 KiB
Markdown

---
title: Gathio
created: 2026-06-07
updated: 2026-06-07
type: app
tags: [catalogue, activitypub-fediverse, evenements, planning, php, sqlite, fediverse]
confidence: medium
contested: false
sources: [https://selfh.st/apps/?tag=activitypub-fediverse, https://gathio.org/, https://github.com/lowercasename/gathio]
---
# 📅 Gathio
> **L'outil minimaliste de planification d'événements** : créez et partagez des événements en quelques clics, avec export iCal et publication ActivityPub. Idéal pour un groupe d'amis, un collectif, une asso.
| Métadonnée | Valeur |
| :--- | :--- |
| **Site web** | [https://gathio.org](https://gathio.org) |
| **GitHub** | [https://github.com/lowercasename/gathio](https://github.com/lowercasename/gathio) |
| **License** | AGPL-3.0 |
| **Langage principal** | PHP, SQLite |
| **Étoiles GitHub** | 59 ⭐ |
| **Dernière MAJ** | 2026-04 |
| **Catégorie** | [[cat-activitypub-fediverse]] |
## Description
Gathio est l'anti-Framapad de l'événementiel : une **page web unique, légère, jetable**, sur laquelle vous décrivez un événement (titre, date, lieu ou lien visio, description, image de couverture) et vous récoltez les inscriptions. **Pas de compte utilisateur** : les invités indiquent juste leur nom (et éventuellement email) pour s'inscrire.
L'originalité fediverse : un événement Gathio est **publié en ActivityPub** sous forme d'un `Event` (`type: Event`). Vos contacts Mastodon peuvent donc **répondre** directement à l'invitation depuis leur instance, et leur réponse (`Accept` / `Reject` / `Tentative`) revient sur Gathio et met à jour la liste des inscrits. L'événement apparaît aussi dans la timeline de leurs followers, ce qui fait office de promotion organique.
L'autre fonctionnalité clé est l'**export iCal/ICS** : chaque événement a une URL `.ics` qu'on peut ajouter à Google Calendar, Apple Calendar, Thunderbird, etc. La **suppression automatique** (optionnelle) des événements passés après N jours permet d'utiliser Gathio comme un service « d'auto-nettoyage ».
**Points forts** : pas de base de données externe (SQLite local), déploiement trivial, RGPD-friendly (peu de données collectées), multilingue, fediverse-first.
**Points faibles** : pas de gestion de **lieux récurrents** ni d'agenda partagé, pas de groupes / communautés au sens Mastodon, les inscriptions ne sont pas confirmées par email par défaut.
## Installation
### Via Docker (recommandé)
Gathio n'a pas d'image officielle Docker Hub, on utilise l'image PHP officielle en buildant l'app.
```yaml
# docker-compose.yml
services:
gathio:
image: ghcr.io/gathio/gathio:latest
container_name: gathio
restart: unless-stopped
ports:
- "8080:80"
volumes:
- gathio_data:/var/www/html/db
environment:
GATHIO_TITLE: "Mon instance Gathio"
GATHIO_URL: "https://events.example.com"
volumes:
gathio_data:
```
### Installation manuelle
1. Cloner le dépôt : `git clone https://github.com/lowercasename/gathio.git`
2. Copier `config/config.js.sample` vers `config/config.js` et éditer
3. Servir le répertoire via Apache/Nginx (PHP 8+)
4. Le fichier SQLite sera créé automatiquement au premier lancement
5. Configurer les **webhooks** ActivityPub (URL de l'instance + clé privée)
## Configuration
1. Éditer `config/config.js` :
- `GATHIO_URL` : URL publique HTTPS
- `GATHIO_TITLE` : nom de l'instance
- `ACTIVITYPUB_PRIVATE_KEY` / `PUBLIC_KEY` : générer avec `openssl`
2. Créer un **événement test** depuis l'interface admin (mot de passe admin dans la config)
3. Partager le lien public : les invités s'inscrivent sans compte
4. Exporter l'événement au format `.ics` pour synchronisation agenda
## Alternatives
### Open source
- [[app-mobilizon]] — solution complète de gestion d'événements et de groupes (plus lourd, français, Elixir)
- [[app-gancio]] — événements fediverse + partie agenda partagé
- **Framaforms / Framadate** — sondages, pas vraiment événements
- **Koillection** — collections, pas événements
- **HumHub** — réseau social, pas spécifique événements
### Propriétaires
- Eventbrite — billetterie centralisée
- Meetup.com — plateforme communautaire propriétaire
- Partiful — événements sociaux centralisés
## Sécurité
- **HTTPS obligatoire** (fédération ActivityPub)
- **Générer des clés RSA solides** pour ActivityPub
- **Limiter la taille des descriptions / images** dans la config PHP (upload max)
- **Sauvegarder** : la BDD SQLite (`db/gathio.sqlite` ou similaire) contient tous les événements et inscriptions
- **Désactiver les inscriptions** au-delà d'une date (paramètre par événement)
## Ressources
- Site officiel : [gathio.org](https://gathio.org)
- Démo publique : [gath.io](https://gath.io)
- Documentation : [github.com/lowercasename/gathio/blob/main/README.md](https://github.com/lowercasename/gathio)
- Communauté : issues GitHub, peu de canaux de discussion
## Pages Liées
- [[cat-activitypub-fediverse]]
- [[recettes-docker-compose]]
- [[app-mobilizon]]
- [[app-gancio]]