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

102 lines
3.2 KiB
Markdown

---
title: Ganymede
created: 2026-06-08
updated: 2026-06-08
type: app
tags: [catalogue, archive, app-marathon-batch-b]
confidence: medium
contested: false
sources: [https://selfh.st/apps/?tag=Archive&app=ganymede, https://github.com/Zibbp/ganymede]
---
# 📦 Ganymede
> **Archive de streams et VOD Twitch** : télécharge et archive automatiquement les lives, VODs, clips d'un streamer, avec interface de navigation et métadonnées.
## 📋 Informations Générales
| Champ | Valeur |
| :--- | :--- |
| **Site web** | [github.com/Zibbp/ganymede](https://github.com/Zibbp/ganymede) |
| **GitHub** | [Zibbp/ganymede](https://github.com/Zibbp/ganymede) |
| **License** | GPL-3.0 |
| **Langage** | Go (backend) + TypeScript (front) |
| **Étoiles GitHub** | 0.9k ⭐ |
| **Catégorie** | [[cat-archive|Archive]] |
## 📝 Description
**Ganymede** est un service dédié à l'**archivage automatique de contenu Twitch** : il surveille un ou plusieurs streamers, télécharge en temps réel les lives, les VODs, les clips, et les expose via une UI web avec lecteur intégré, métadonnées, chapitres.
Différence vs ArchiveBox : ArchiveBox = pages web généralistes. Ganymede = **spécialisé Twitch**, ingestion temps réel, transcodage.
Pour qui : archivistes de streams, communautés de fans qui veulent garder trace d'un streamer, modérateurs, chercheurs en culture numérique.
## 🚀 Installation
### Docker Compose
```yaml
version: '3.8'
services:
ganymede:
image: zibbp/ganymede:latest
container_name: ganymede
restart: unless-stopped
environment:
- DATABASE_URL=postgresql://ganymede:***@db:5432/ganymede
- TWITCH_CLIENT_ID=*** - TWITCH_CLIENT_SECRET=*** - JWT_SECRET=*** volumes:
- ganymede_data:/app/data
- ganymede_videos:/app/videos
labels:
- "traefik.enable=true"
- "traefik.http.routers.ganymede.rule=Host(`archive.example.com`)"
- "traefik.http.routers.ganymede.entrypoints=websecure"
- "traefik.http.routers.ganymede.tls.certresolver=letsencrypt"
depends_on:
- db
db:
image: postgres:16-alpine
environment:
- POSTGRES_USER=ganymede
- POSTGRES_PASSWORD=*** - POSTGRES_DB=ganymede
volumes:
- ganymede_db:/var/lib/postgresql/data
volumes:
ganymede_data:
ganymede_videos:
ganymede_db:
```
## 🔄 Alternatives
### Open Source
- [[app-archivebox]] — Web archive généraliste
- **TwitchDownloader** — CLI downloader
- **Twitch VOD downloader** — Outils ponctuels
- [[app-eonvelope]] — Email archive
### Propriétaires
- **TwitchTracker** — Stats archives
- **Streamsentials** — Catalogue public
- **SullyGnome** — Stats Twitch
## 🔐 Sécurité
- **Auth** : JWT + email/password
- **API Twitch** : credentials OAuth à protéger
- **HTTPS** : obligatoire
- **Stockage vidéo** : volumineux, prévoir扩容
- **Pas d'auth publique** : usage personnel
## 📚 Ressources
- [GitHub](https://github.com/Zibbp/ganymede)
- [Documentation](https://github.com/Zibbp/ganymede#readme)
- [Démo](https://github.com/Zibbp/ganymede#demo)
## Pages Liées
- [[cat-archive]] — Catégorie Archive
- [[app-archivebox]] — Concurrent généraliste
- [[recettes-docker-compose]] — Templates Docker