{"id":30854285,"url":"https://github.com/siriusmart/youtube-tui","last_synced_at":"2025-09-07T10:10:58.039Z","repository":{"id":38136394,"uuid":"486721097","full_name":"Siriusmart/youtube-tui","owner":"Siriusmart","description":"An aesthetically pleasing YouTube TUI written in Rust","archived":false,"fork":false,"pushed_at":"2025-08-30T22:15:03.000Z","size":4970,"stargazers_count":466,"open_issues_count":12,"forks_count":17,"subscribers_count":12,"default_branch":"master","last_synced_at":"2025-08-31T00:18:16.359Z","etag":null,"topics":["cli","rust","rust-lang","terminal","terminal-based","terminal-user-interface","tui","youtube","youtube-dl"],"latest_commit_sha":null,"homepage":"https://tui.siri.ws/youtube","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Siriusmart.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"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,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2022-04-28T19:19:51.000Z","updated_at":"2025-08-30T22:15:43.000Z","dependencies_parsed_at":"2024-01-08T21:14:55.587Z","dependency_job_id":"1c7ec736-3732-4b51-b6b9-93c7dfae9b2b","html_url":"https://github.com/Siriusmart/youtube-tui","commit_stats":{"total_commits":58,"total_committers":6,"mean_commits":9.666666666666666,"dds":0.1724137931034483,"last_synced_commit":"a7e790037a9d9f787eb67d43740e8c75078708f9"},"previous_names":[],"tags_count":18,"template":false,"template_full_name":null,"purl":"pkg:github/Siriusmart/youtube-tui","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Siriusmart%2Fyoutube-tui","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Siriusmart%2Fyoutube-tui/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Siriusmart%2Fyoutube-tui/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Siriusmart%2Fyoutube-tui/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Siriusmart","download_url":"https://codeload.github.com/Siriusmart/youtube-tui/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Siriusmart%2Fyoutube-tui/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":274022472,"owners_count":25209013,"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","status":"online","status_checked_at":"2025-09-07T02:00:09.463Z","response_time":67,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["cli","rust","rust-lang","terminal","terminal-based","terminal-user-interface","tui","youtube","youtube-dl"],"created_at":"2025-09-07T10:10:56.625Z","updated_at":"2025-09-07T10:10:58.030Z","avatar_url":"https://github.com/Siriusmart.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003c!-- ## YouTube TUI is being **rewritten**, [click here](https://github.com/Siriusmart/youtube-tui/issues/48) to learn more. --\u003e\n\n![](https://img.shields.io/github/languages/top/siriusmart/youtube-tui?label=rust)\n![](https://shields.io/github/license/siriusmart/youtube-tui)\n[![](https://img.shields.io/crates/d/youtube-tui?label=crates.io%20downloads)](https://crates.io/crates/youtube-tui)\n[![](https://img.shields.io/crates/v/youtube-tui?label=crates.io%20version)](https://crates.io/crates/youtube-tui)\n[![](https://img.shields.io/aur/version/youtube-tui)](https://aur.archlinux.org/packages/youtube-tui)\n![](https://shields.io/github/stars/siriusmart/youtube-tui?style=social)\n\n***Read more in the [user manual](https://tui.siri.ws/youtube) (including installation guide and documentation).***\n\n# Overview\n\nWritten in Rust, the **YouTube TUI** is a lightweight and user friendly TUI for browsing YouTube content from the terminal. Works out of the box and easily configurable.\n\n![](./docs/src/images/readme1.png)\n\nIt is like an _app launcher_, it launches other programs to do the heavy lifting (for example, `mpv` for playing videos).\n\n\u003csub\u003eIt also have an embedded mpv music player, but that can be disabled in compile time.\u003c/sub\u003e\n\n\u003e Consider regenerating config files on updates to allow new features.\n\n## Customisable\n\nThe YouTube TUI can be customised through config files, they are located in `~/.config/youtube-tui` and are in the YAML format.\n\nHere's an example of the config file:\n\n```yaml\nmouse_support: true\nmax_watch_history: 50\nallow_unicode: false\nimages: Sixels\nrefresh_after_modifying_search_filters: true\nprovider: YouTube\nenv:\n  browser: xdg-open\n  video-player: mpv\n  youtube-downloader: yt-dlp\n  terminal-emulator: konsole -e\n```\n\nAnything from layouts to colours and keybindings can be customised, more on that later.\n\n## Dependency-free*\n\n\u003csub\u003eSee [installation#features](https://tui.siri.ws/youtube/installation.html#features) for more info on dependencies.\u003c/sub\u003e\n\nThe YouTube TUI does not work on its own, it is instead like a _TUI frontend_ for programs like `mpv` or `yt-dlp`/`youtube-dl`.\n\nHowever, the programs to launch can be changed, and therefore the YouTube TUI \u003cu\u003edoes not rely on any specific dependencies\u003c/u\u003e to run.\n\n![](./docs/src/images/readme2.png)\n\n## Powerful\n\nThe YouTube TUI allows you to browse YouTube with (almost) all of it's features, functions including:\n\n- View information about channels, playlists and videos\n- Use search filters to sort and filter search results\n- Save browsing history\n- Embedded audio/music player\n\n![](./docs/src/images/readme3.png)\n\nIt also includes features like:\n\n- Vim-like commands\n- Mouse support\n- Extensible keybindings system\n- Offline library\n- Subscriptions\n\n### TODO\n\n- [URGENT] Replace the no-longer-going-to-compile `typemap` dependency with either a self implementation of it or a useable crate.\n\u003e This has been urgent for over 2 years now, maybe the deprecation warnings aren't real, nothing ever happens.\n- Git like command line to improve on `yt-dlp` - make changes to existing downloaded playlists instead of redownloading the entire thing.\n- Channel caching and bookmarking.\n- Selecting item on channel list moves focus to feed items.\n\n## How to contribute\n\nYou will need a \u003cu\u003egeneral knowledge\u003c/u\u003e of the Rust programming language, and the ability to _understand my spaghetti_.\n\n1. Open an issue to make sure nobody else is working on the same feature\n2. Write code\n3. Open a pull request\n4. Get merged?\n\nOr just _fix that typo in README_ -\\_-\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsiriusmart%2Fyoutube-tui","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsiriusmart%2Fyoutube-tui","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsiriusmart%2Fyoutube-tui/lists"}