{"id":13728713,"url":"https://github.com/trizen/pipe-viewer","last_synced_at":"2026-03-14T00:50:57.507Z","repository":{"id":38387553,"uuid":"308683917","full_name":"trizen/pipe-viewer","owner":"trizen","description":"A lightweight YouTube client for Linux, without requiring an API key.","archived":false,"fork":false,"pushed_at":"2025-04-22T16:45:46.000Z","size":1223,"stargazers_count":426,"open_issues_count":37,"forks_count":19,"subscribers_count":12,"default_branch":"main","last_synced_at":"2025-04-22T17:53:25.881Z","etag":null,"topics":["invidious","perl"],"latest_commit_sha":null,"homepage":"","language":"Perl","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"artistic-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/trizen.png","metadata":{"files":{"readme":"README.md","changelog":"Changes","contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null},"funding":{"github":null,"patreon":null,"open_collective":null,"ko_fi":null,"tidelift":null,"community_bridge":null,"liberapay":null,"issuehunt":null,"otechie":null,"custom":"https://www.paypal.me/trizen"}},"created_at":"2020-10-30T16:21:27.000Z","updated_at":"2025-04-22T16:45:34.000Z","dependencies_parsed_at":"2023-02-14T07:50:24.517Z","dependency_job_id":"6ac8497c-602b-4953-84e4-55f92cd33954","html_url":"https://github.com/trizen/pipe-viewer","commit_stats":{"total_commits":407,"total_committers":9,"mean_commits":45.22222222222222,"dds":"0.28501228501228504","last_synced_commit":"cd9f9bdca5680c53e365cc34e00232e0539ef79c"},"previous_names":[],"tags_count":42,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/trizen%2Fpipe-viewer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/trizen%2Fpipe-viewer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/trizen%2Fpipe-viewer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/trizen%2Fpipe-viewer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/trizen","download_url":"https://codeload.github.com/trizen/pipe-viewer/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254414477,"owners_count":22067270,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["invidious","perl"],"created_at":"2024-08-03T02:00:48.763Z","updated_at":"2026-03-14T00:50:57.502Z","avatar_url":"https://github.com/trizen.png","language":"Perl","funding_links":["https://www.paypal.me/trizen"],"categories":["YouTube","Overview","perl","Perl","Table of Contents"],"sub_categories":["YouTube"],"readme":"## pipe-viewer\n\nA lightweight application (fork of [straw-viewer](https://github.com/trizen/straw-viewer)) for searching and playing videos from YouTube.\n\nThis fork parses the YouTube website directly and relies on the invidious instances only as a fallback method.\n\n### pipe-viewer\n\n* command-line interface to YouTube.\n\n![pipe-viewer](https://user-images.githubusercontent.com/614513/97738550-6d0faf00-1ad6-11eb-84ec-d37f28073d9d.png)\n\n### gtk-pipe-viewer\n\n* GTK+ interface to YouTube.\n\n![gtk-pipe-viewer](https://user-images.githubusercontent.com/614513/127567550-d5742dee-593c-4167-acc4-6d80fd061ffc.png)\n\n\n### AVAILABILITY\n\n* Alpine Linux: `doas apk add pipe-viewer`\n* Alt Linux: https://packages.altlinux.org/en/sisyphus/srpms/pipe-viewer/\n* Arch Linux (AUR): https://aur.archlinux.org/packages/pipe-viewer-git/\n* Void Linux: `sudo xbps-install pipe-viewer`\n* Parabola GNU/Linux-libre: `pacman -S pipe-viewer`\n* Gentoo Linux (kske overlay): `eselect repository enable kske \u0026\u0026 emerge -av net-misc/pipe-viewer`\n* Slackware Linux (SBo): https://slackbuilds.org/repository/15.0/multimedia/pipe-viewer/\n* [Guix](https://guix.gnu.org):\nPipe-Viewer can be deployed on any GNU/Linux distribution using Guix.\nTo install in the user's default profile, do `guix install pipe-viewer`.\nTo test without installing, do `guix environment --pure --ad-hoc pipe-viewer mpv -- pipe-viewer`.\n\n### REVIEWS\n\n* [EN] How-to install pipe-viewer in Debian\n    * https://hunden.linuxkompis.se/2021/11/14/how-to-install-pipe-viewer-in-debian.html\n\n* [EN] pipe-viewer – lightweight YouTube client\n    * https://www.linuxlinks.com/pipe-viewer-lightweight-youtube-client/\n\n### VIDEO REVIEWS\n\n* [EN] Pipe-Viewer and Straw-Viewer -- Search Youtube via Terminal - Linux CLI\n    * https://www.youtube.com/watch?v=I4tfHUmklWo\n\n* [TW] Pipe-viewer！有史以來最佳的 YouTube 體驗就在這裡～\n    * https://wiwi.video/videos/watch/798d38cd-9d10-4f8a-ac1f-f776c6d0aa2c\n\n### TRY\n\nFor trying the latest commit of `pipe-viewer`, without installing it, execute the following commands:\n\n```console\n    cd /tmp\n    wget https://github.com/trizen/pipe-viewer/archive/main.zip -O pipe-viewer-main.zip\n    unzip -n pipe-viewer-main.zip\n    cd pipe-viewer-main\n    ./bin/pipe-viewer\n```\n\n### INSTALLATION\n\nTo install `pipe-viewer`, run:\n\n```console\n    perl Build.PL\n    sudo ./Build installdeps\n    sudo ./Build install\n```\n\nTo install `gtk-pipe-viewer` along with `pipe-viewer`, run:\n\n```console\n    perl Build.PL --gtk\n    sudo ./Build installdeps\n    sudo ./Build install\n```\n\n### DEPENDENCIES\n\n#### For pipe-viewer:\n\n* [libwww-perl](https://metacpan.org/release/libwww-perl)\n* [LWP::Protocol::https](https://metacpan.org/release/LWP-Protocol-https)\n* [Data::Dump](https://metacpan.org/release/Data-Dump)\n* [JSON](https://metacpan.org/release/JSON)\n* [yt-dlp](https://github.com/yt-dlp/yt-dlp) or [youtube-dl](https://github.com/ytdl-org/youtube-dl).\n\n#### For gtk-pipe-viewer:\n\n* [Gtk3](https://metacpan.org/release/Gtk3)\n* [File::ShareDir](https://metacpan.org/release/File-ShareDir)\n* \\+ the dependencies required by pipe-viewer.\n\n#### Build dependencies:\n\n* [Module::Build](https://metacpan.org/pod/Module::Build)\n\n#### Optional dependencies:\n\n* Local cache support: [LWP::UserAgent::Cached](https://metacpan.org/release/LWP-UserAgent-Cached)\n* Better STDIN support (+history): [Term::ReadLine::Gnu](https://metacpan.org/release/Term-ReadLine-Gnu)\n* Faster JSON deserialization: [JSON::XS](https://metacpan.org/release/JSON-XS)\n* Fixed-width formatting: [Unicode::LineBreak](https://metacpan.org/release/Unicode-LineBreak) or [Text::CharWidth](https://metacpan.org/release/Text-CharWidth)\n* For the `*_parallel` config-options: [Parallel::ForkManager](https://metacpan.org/release/Parallel-ForkManager)\n\n\n### PACKAGING\n\nTo package this application, run the following commands:\n\n```console\n    perl Build.PL --destdir \"/my/package/path\" --installdirs vendor [--gtk]\n    ./Build test\n    ./Build install --install_path script=/usr/bin\n```\n\n### INVIDIOUS INSTANCES\n\nTo use invidious instances, pass the [--invidious](https://github.com/trizen/pipe-viewer/commit/17fb2136f3f3d8ee6dacac05beabcc15082f699d) option:\n\n```console\n    pipe-viewer --invidious\n```\n\nor set in the configuration file (`~/.config/pipe-viewer/pipe-viewer.conf`):\n\n```perl\n    prefer_invidious =\u003e 1,\n```\n\nTo use a specific invidious instance, like [invidious.fdn.fr](https://invidious.fdn.fr/), pass the `--api=HOST` option:\n\n```console\n    pipe-viewer --invidious --api=invidious.fdn.fr\n```\n\nTo make the change permanent, set in the configuration file:\n\n```perl\n    api_host =\u003e \"invidious.fdn.fr\",\n```\n\nWhen `api_host` is set to `\"auto\"`, `pipe-viewer` picks a random invidious instance from [api.invidious.io](https://api.invidious.io/).\n\n### SUPPORT AND DOCUMENTATION\n\nAfter installing, you can find documentation with the following commands:\n\n    man pipe-viewer\n    perldoc WWW::PipeViewer\n\n### LICENSE AND COPYRIGHT\n\nCopyright (C) 2012-2026 Trizen\n\nThis program is free software; you can redistribute it and/or modify it\nunder the terms of either: the GNU General Public License as published\nby the Free Software Foundation; or the Artistic License.\n\nSee https://dev.perl.org/licenses/ for more information.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftrizen%2Fpipe-viewer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftrizen%2Fpipe-viewer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftrizen%2Fpipe-viewer/lists"}