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

3.9 KiB


title: CouchTube created: 2026-06-07 updated: 2026-06-07 type: app tags: [catalogue, front-end, youtube, streaming, nodejs, typescript] confidence: medium contested: false sources: [https://selfh.st/apps/?q=couchtube]

CouchTube 🛋️

Front-end YouTube auto-hébergeable léger, écrit en Node.js/TypeScript, conçu pour les setups "couch" (TV, Raspberry Pi, basse consommation).

Métadonnée Valeur
Site web https://github.com/Victorique-67/couchtube
GitHub https://github.com/Victorique-67/couchtube
License MIT
Langage principal TypeScript (Node.js)
Étoiles GitHub 10
Dernière MAJ 2025
Catégorie cat-front-end

Description

CouchTube se positionne comme une alternative à app-invidious et app-piped pour YouTube, mais avec un angle particulier : la consommation depuis un canapé, d'où son nom. L'interface est pensée pour les grands écrans et les télécommandes (navigation au clavier, focus visible, gros boutons), ce qui le rend adapté à un Raspberry Pi branché sur une TV ou à un HTPC familial.

Écrit en Node.js avec TypeScript et probablement Express ou Fastify, CouchTube proxifie les flux vidéo via l'API YouTube (via Invidious ou Piped upstream) et propose une UI minimaliste sans tracking, sans recommandations algorithmiques, et sans la lourdeur du client web officiel. Le projet met l'accent sur la simplicité de déploiement : peu de dépendances, configuration légère.

⚠️ Projet jeune avec bus factor 1 (un seul mainteneur principal), seulement 10 étoiles. À envisager comme un outil complémentaire plutôt qu'une solution critique en production. La pérennité des API YouTube upstream reste le point fragile de tout l'écosystème des front-ends alternatifs.

Installation

Via Docker (recommandé)

services:
  couchtube:
    image: ghcr.io/victorique-67/couchtube:latest
    container_name: couchtube
    restart: unless-stopped
    ports:
      - "3010:3000"
    environment:
      PORT: 3000
      UPSTREAM_INSTANCE: "https://invidious.fdn.fr"
      DEFAULT_QUALITY: 720p
      DEFAULT_THEME: dark
      ENABLE_Search: "true"
    depends_on:
      - invidious

Installation manuelle

Cloner le dépôt, npm install ou pnpm install, configurer le fichier .env avec UPSTREAM_INSTANCE (instance Invidious ou Piped à utiliser comme backend), puis npm run build et npm start. Mettre derrière un reverse proxy (app-caddy ou app-nginx) avec HTTPS.

Configuration

Variables d'environnement : PORT (port d'écoute), UPSTREAM_INSTANCE (URL de l'instance Invidious/Piped backend — obligatoire), DEFAULT_QUALITY (résolution par défaut), DEFAULT_THEME (clair/sombre), ENABLE_SEARCH (autoriser ou non la recherche), HIDE_RECOMMENDATIONS (masquer les suggestions en fin de vidéo). Aucune base de données requise, CouchTube est stateless.

Alternatives

Open source

  • app-invidious — Le plus mature des front-ends YouTube
  • app-piped — Alternative avec fonctionnalités étendues (playlists, sponsors)
  • app-materialious — UI Material Design, riche en fonctionnalités

Propriétaires

  • YouTube (officiel) — Interface complète, mais tracking et pubs

Sécurité

  • Choisir une instance upstream (UPSTREAM_INSTANCE) de confiance — tout le trafic vidéo transite par elle
  • Pas de comptes utilisateurs, pas de stockage de données sensibles
  • Rate-limiting recommandé au niveau du reverse proxy
  • HTTPS obligatoire (YouTube bloque les clients non-HTTPS)
  • Surveiller les changements d'API YouTube qui peuvent casser les front-ends alternatifs

Ressources

Pages Liées