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

7.7 KiB


title: Fireshare created: 2026-06-07 updated: 2026-06-07 type: app tags: [catalogue, gaming, video, streaming, clips, partage-media, transcodage] confidence: high contested: false sources: [https://selfh.st/apps/?tag=Gaming, https://github.com/ShaneIsrael/fireshare]

🔥 Fireshare

Partage de clips gaming via liens uniques — auto-hébergez vos highlights et partagez-les avec votre communauté, sans Twitch ni YouTube.

📋 Informations Générales

Champ Valeur
Site web fireshare.net
GitHub ShaneIsrael/fireshare
License GPL-3.0
Langage JavaScript (frontend) + Python (backend)
Étoiles 88 (catalogue) / 1,4k (GitHub)
Dernière MAJ 2026-06-05 (v1.6.15)
Catégorie cat-gaming

📝 Description

Fireshare est une application web self-hosted dédiée au partage de clips et vidéos gaming. Vous déposez vos .mp4, .webm, .mov ou .m4v dans un dossier, Fireshare scanne, génère les jaquettes, organise par jeu, et expose chaque clip via une URL unique partageable (public ou privé, protégé par mot de passe au choix).

L'application a été pensée pour les streamers, monteurs vidéo, et communautés gaming qui veulent s'affranchir des plateformes centralisées (Twitch, YouTube, Twitter) pour partager leurs highlights. Chaque clip peut être public (apparaît dans le flux communautaire et un flux RSS), ou privé (accessible uniquement via le lien direct), ou encore protégé par mot de passe.

Fireshare propose un transcodage optionnel (CPU ou GPU NVIDIA NVENC) pour générer des versions en plus basse qualité, ce qui permet le streaming adaptatif — le serveur bascule automatiquement le viewer sur une version allégée si sa bande passante est insuffisante. Le fichier original est toujours servi tel quel quand c'est possible.

Fonctionnalités clés :

  • Scan automatique de dossiers, détection du jeu, génération de jaquettes
  • Liens uniques partageables (public, privé, protégé par mot de passe)
  • Transcodage CPU ou GPU NVIDIA (NVENC) pour streaming adaptatif
  • Flux RSS pour les nouveaux clips publics
  • Notifications Discord / webhooks
  • Comptage de vues, tags, recherche, crop vidéo depuis l'UI
  • Uploads depuis l'UI (désactivables)
  • Support LDAP pour l'authentification d'entreprise
  • Open Graph metadata pour aperçus riches sur Discord/Slack/Twitter
  • Nouveau (v1.6) : système dédié screenshots/feed images, règles par dossier

🚀 Installation

Option 1 : Docker Compose (recommandé)

# docker-compose.yml
services:
  fireshare:
    container_name: fireshare
    image: shaneisrael/fireshare:latest-lite  # ou :latest pour GPU NVIDIA
    restart: unless-stopped
    ports:
      - "8080:80"
    volumes:
      - ./fireshare/data:/data           # base SQLite interne
      - ./fireshare/processed:/processed # jaquettes et métadonnées générées
      - /chemin/vers/clips:/videos       # vos clips gaming à partager
      - /chemin/vers/screenshots:/images # vos screenshots (optionnel)
    environment:
      - ADMIN_USERNAME=admin
      - ADMIN_PASSWORD=ChangezMoiTresFort!
      - SECRET_KEY=$(openssl rand -hex 32)
      - DOMAIN=https://clips.example.com  # requis pour Open Graph
      - PUID=1000
      - PGID=1000
      - TZ=Europe/Paris
      # Transcodage GPU NVIDIA (image :latest uniquement, pas :latest-lite)
      - ENABLE_TRANSCODING=true
      - TRANSCODE_GPU=true
      - NVIDIA_VISIBLE_DEVICES=all
    # Uniquement pour l'image :latest avec GPU
    # deploy:
    #   resources:
    #     reservations:
    #       devices:
    #         - driver: nvidia
    #           count: all
    #           capabilities: [gpu]
docker compose up -d

Puis ouvrir http://IP:8080 et se connecter avec ADMIN_USERNAME / ADMIN_PASSWORD.

Option 2 : Image latest (GPU NVIDIA)

L'image complète shaneisrael/fireshare:latest embarque FFmpeg avec les libs CUDA pour le transcodage NVENC. Attention, elle pèse ~2,5 Go contre ~250 Mo pour latest-lite.

Option 3 : Installation manuelle

git clone https://github.com/ShaneIsrael/fireshare.git
cd fireshare
# Backend Python
cd server
pip install -r requirements.txt
python -m flask run
# Frontend (autre terminal)
cd ../client
npm install
npm run build

⚙️ Configuration

  1. Volumes : quatre montages obligatoires : /data (BDD), /processed (cache), /videos (sources), /images (screenshots).
  2. Variables critiques :
    • SECRET_KEY : 64 caractères hex (openssl rand -hex 32)
    • DOMAIN : URL publique exacte (sinon Open Graph cassé)
    • ADMIN_USERNAME / ADMIN_PASSWORD : créés au premier démarrage
  3. Transcodage : ENABLE_TRANSCODING=true active la génération de versions basse qualité. Surviewer auto-downgrade en cas de buffering.
  4. GPU : TRANSCODE_GPU=true + image :latest (pas :latest-lite) + driver NVIDIA ≥470 + toolkit CUDA.
  5. LDAP : support natif pour intégrer un annuaire d'entreprise.
  6. Webhook Discord : URL configurable dans l'admin pour notifier chaque nouveau clip.

🔄 Alternatives

Open Source

  • app-peertube — Plateforme vidéo décentralisée, plus générale que gaming
  • app-jellyfin — Serveur média avec transcodage, pas de partage de clips
  • Owncast — Streaming live self-hosted, complémentaire pour le live
  • BilboPlanet — Partage vidéo décentralisé (en développement)
  • DTube — Alternative décentralisée YouTube (skinned)
  • app-gaseous — Plutôt ROMs mais peut servir au partage

Propriétaires (ce que Fireshare remplace)

  • Twitch Clips — hébergement par Twitch, suppression possible à tout moment
  • Twitter/X vidéo — compression agressive, déréférencement fréquent
  • YouTube Unlisted — workflow lourd, anti-embed Twitch-friendly
  • Streamable — service gratuit devenu limité (paywall + ads)
  • Gyazo / Imgur GIF — pour les GIFs courts uniquement

Comparaison rapide

Critère Fireshare Owncast Peertube
Cible Clips gaming Live stream Vidéo à la demande
Transcodage GPU
Liens uniques n/a n/a
Multi-tenants
Licence GPL-3.0 MIT AGPL-3.0

🔐 Sécurité

  • Auth obligatoire sur l'admin. Changer ADMIN_PASSWORD immédiatement.
  • SECRET_KEY cryptographique : openssl rand -hex 32 minimum, ne JAMAIS réutiliser.
  • Exposer Fireshare derrière un reverse proxy (app-traefik, app-caddy, app-nginx-proxy-manager) avec TLS valide, sinon les aperçus Open Graph sont cassés.
  • Restriction upload : ENABLE_UPLOADS=false (variable env) si vous ne voulez pas que des utilisateurs uploadent sur votre instance.
  • Protection des clips : utiliser systématiquement le mode private + lien direct, ou password-protected pour les highlights sensibles.
  • Backups : sauvegarder ./fireshare/data (SQLite) et ./fireshare/processed (cache de métadonnées). Le dossier vidéos source peut être reconstitué.

📚 Ressources

Pages Liées