https://github.com/alexpasmantier/television
A cross-platform, fast and extensible general purpose fuzzy finder TUI 📺
https://github.com/alexpasmantier/television
cli command-line-tool fuzzy fuzzy-matching fuzzy-search grep rust terminal tui
Last synced: 22 days ago
JSON representation
A cross-platform, fast and extensible general purpose fuzzy finder TUI 📺
- Host: GitHub
- URL: https://github.com/alexpasmantier/television
- Owner: alexpasmantier
- License: mit
- Created: 2024-09-15T22:16:18.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-05-08T20:03:47.000Z (10 months ago)
- Last Synced: 2025-05-08T21:20:33.013Z (10 months ago)
- Topics: cli, command-line-tool, fuzzy, fuzzy-matching, fuzzy-search, grep, rust, terminal, tui
- Language: Rust
- Homepage: https://crates.io/crates/television
- Size: 10.7 MB
- Stars: 2,764
- Watchers: 11
- Forks: 57
- Open Issues: 23
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
- awesome-cli-apps - television - A very fast general purpose fuzzy finder. (Files and Directories / Search)
- trackawesomelist - television (⭐1.9k) - A blazing fast general purpose fuzzy finder TUI  (Recently Updated / [Who Wants to Be a Millionare](https://www.boardgamecapital.com/who-wants-to-be-a-millionaire-rules.htm))
- fucking-awesome-rust - television - A blazing fast general purpose fuzzy finder TUI  (Applications / Utilities)
- awesome-rust - television - A blazing fast general purpose fuzzy finder TUI  (Applications / Utilities)
- my-awesome-github-stars - alexpasmantier/television - A very fast, portable and hackable fuzzy finder. (Rust)
- fucking-awesome-cli-apps - television - A very fast general purpose fuzzy finder. (Files and Directories / Search)
- awesome-repositories - alexpasmantier/television - A very fast, portable and hackable fuzzy finder. (Rust)
- awesome-tuis - television
- awesome-cli-apps-in-a-csv - television - Blazing fast general purpose fuzzy finder TUI. (<a name="option-picker"></a>Fuzzy finders and option pickers)
- definitive-opensource - television
- awesome-cli-apps - television - Blazing fast general purpose fuzzy finder TUI. (<a name="option-picker"></a>Fuzzy finders and option pickers)
- awesome-rust-tools - television
- awesome-ratatui - television - A blazingly fast general purpose fuzzy finder for your terminal. (💻 Apps / 🚀 Productivity and Utilities)
- awesome-rust-with-stars - television - 01-28 | (Applications / Utilities)
README
# Television (tv)
**A very fast, portable and hackable fuzzy finder for the terminal.**




[](https://discord.gg/hQBrzsJgUg)

## About
Television is a fast, portable fuzzy finder for the terminal. It lets you search in real-time through any kind of data source such as files, text, git repositories, environment variables, docker containers, and more.
**[Read the documentation](https://alexpasmantier.github.io/television/)**
## Quick Start
```sh
tv # Search files (default channel)
tv text # Search file contents
tv git-repos # Find git repositories
tv --help # See all options
```
For a complete introduction, see the [Quickstart Guide](https://alexpasmantier.github.io/television/docs/getting-started/quickstart).
## Installation
### Quick Install (Recommended)
```sh
curl -fsSL https://alexpasmantier.github.io/television/install.sh | bash
```
### Package Managers
| Platform | Command |
|----------|---------|
| **Arch Linux** | `pacman -S television` |
| **Homebrew** | `brew install television` |
| **Cargo** | `cargo install television` |
| **Scoop** | `scoop bucket add extras && scoop install television` |
| **WinGet** | `winget install --exact --id alexpasmantier.television` |
| **Nix** | `nix run nixpkgs#television` |
For more installation options, see [Installation](https://alexpasmantier.github.io/television/docs/getting-started/installation).
## Custom Channels
Create custom channels for any workflow. Here's an example TLDR channel:
```toml
# ~/.config/television/cable/tldr.toml
[metadata]
name = "tldr"
description = "Browse TLDR pages"
[source]
command = "tldr --list"
[preview]
command = "tldr '{}'"
[keybindings]
ctrl-e = "actions:open"
[actions.open]
command = "tldr '{}'"
mode = "execute"
```
Learn more about [creating channels](https://alexpasmantier.github.io/television/docs/getting-started/first-channel).
## Shell Integration
Enable smart autocomplete (Ctrl+T) and history search (Ctrl+R):
```sh
# Zsh
echo 'eval "$(tv init zsh)"' >> ~/.zshrc
# Bash
echo 'eval "$(tv init bash)"' >> ~/.bashrc
```
See [Shell Integration](https://alexpasmantier.github.io/television/docs/user-guide/shell-integration) for more shells.
## Editor Integration
- **Neovim**: [tv.nvim](https://github.com/alexpasmantier/tv.nvim)
- **Vim**: [tv.vim](https://github.com/prabirshrestha/tv.vim)
- **VSCode**: [Television extension](https://marketplace.visualstudio.com/items?itemName=alexpasmantier.television)
- **Zed**: [Telescope-style setup](https://zed.dev/blog/hidden-gems-part-2#emulate-vims-telescope-via-television)
## Documentation
- [Getting Started](https://alexpasmantier.github.io/television/docs/getting-started/quickstart)
- [User Guide](https://alexpasmantier.github.io/television/docs/user-guide/channels)
- [Tips and Tricks](https://alexpasmantier.github.io/television/docs/advanced/tips-and-tricks)
- [Reference](https://alexpasmantier.github.io/television/docs/reference/cli)
## Credits
Inspired by [telescope.nvim](https://github.com/nvim-telescope/telescope.nvim). Built with [nucleo](https://github.com/helix-editor/helix) (fuzzy matching), [tokio](https://github.com/tokio-rs/tokio) (async runtime), and [ratatui](https://github.com/ratatui/ratatui) (TUI framework).
Thanks to all contributors: