A lightweight application for searching and streaming videos from YouTube, using the Invidious API and hypervideo support
c1322a4e — Jesús 4 months ago
version 1.0.6
8bfb2063 — trizen 5 months ago
gtk: added the boolean `autoscroll_to_end` option (disabled by default).
8cf51536 — trizen 5 months ago
- Workaround for non-existent extra thumbnails in "video details" window.



You can also use your local clone with git send-email.


A lightweight application (fork of youtube-viewer) for searching and playing videos from YouTube, using the API of invidio.us and hypervideo support.


  • command-line interface to YouTube.



  • GTK+ interface to YouTube.



The project is in its early stages of development and some features are not implemented yet.


For trying the latest commit of fair-viewer, without installing it, execute the following commands:

cd /tmp
    wget https://libregit.org/heckyel/fair-viewer/archive/master.zip  -O fair-viewer-master.zip
    unzip -n fair-viewer-master.zip
    cd fair-viewer-master/bin
    perl -pi -ne 's{DEVEL = 0}{DEVEL = 1}' {gtk-,}fair-viewer


To install fair-viewer, run:

perl Build.PL
    sudo ./Build installdeps
    sudo ./Build install

To install gtk-fair-viewer along with fair-viewer, run:

perl Build.PL --gtk
    sudo ./Build installdeps
    sudo ./Build install


for fair-viewer, run:

nano -w "$HOME/.config/fair-viewer/fair-viewer.conf"

for gtk-fair-viewer, run:

nano -w "$HOME/.config/fair-viewer/gtk-fair-viewer.conf"


#For fair-viewer:
#For gtk-fair-viewer:
#Build dependencies:
#Optional dependencies:


To package this application, run the following commands:

perl Build.PL --destdir "/my/package/path" --installdirs vendor [--gtk]
    ./Build test
    ./Build install --install_path script=/usr/bin


Sometimes, the default instance, invidious.snopyta.org, may fail to work properly. When this happens, we can change the API host to some other instance of invidious, such as invidious.tube:

fair-viewer --api=invidious.tube

To make the change permanent, set in the configuration file:

api_host => "invidious.tube",

Alternatively, the following will automatically pick a random invidious instance everytime the program is started:

api_host => "auto",

The available instances are listed at: https://instances.invidio.us/


pipe-viewer is an experimental fork of straw-viewer with the goal of parsing the YouTube website directly, and thus it may be a faster and more reliable alternative.


After installing, you can find documentation with the following commands:

man fair-viewer
perldoc WWW::FairViewer

Copyright (C) 2012-2020 Trizen

Copyright (C) 2020 Jesus

This program is free software; you can redistribute it and/or modify it under the terms of either: the GNU General Public License as published by the Free Software Foundation; or the Artistic License.

See http://dev.perl.org/licenses/ for more information.