
yt-browse
github.com/nolenroyalty/yt-browse- Category
- Developer Tools
- Rank
- No. 1490Tools index
Previous survey · No. 1485 ·
- Pricing
- Open Source
- Type
- TOOL
- Use case
- Data, Retrieval & Knowledge
- Interfaces
- CLI
- Builder
- @nolenroyalty
- GitHub
- 154 stars
- Date
About
A terminal-based YouTube channel browser that provides advanced search capabilities for playlists and videos. It offers regex/fuzzy search, date filtering, sorting options, and instant search through cached data - solving YouTube's limited native search functionality.
What it does
Point it at one YouTube channel, then explore that channel’s uploads and playlists from a keyboard-driven interface. It retrieves metadata through YouTube’s API, keeps local copies for repeat visits, shows descriptions and statistics, and can open or copy the selected YouTube link.
Why it's ranked here
This is a focused answer to a real retrieval problem for channels with large archives. Playlist drill-down, configurable filtering, metadata-based ordering, recent-channel recall, and local caching form a coherent workflow. The required API key and source build add enough setup friction to limit casual adoption.
What's good
The cache uses compressed JSON, configurable expiry, and least-recently-used eviction above 200 MB. Searches can cover titles alone or include descriptions. Matching text is highlighted, including careful conversion for Unicode text. Video details expose duration, views, likes, publication time, description, and URL without leaving the terminal.
Tradeoffs
You must create a Google Cloud project, enable the YouTube Data API, provide a key, and remain within its quota. Installation requires a local Go toolchain and compilation. Fuzzy results are relevance ordered, so other sorting is disabled while that filter runs. The author also states that unwanted feature requests will be closed.
How to use it well
Use it when you repeatedly mine one creator’s deep archive and want fast follow-up searches after the initial fetch. It suits terminal users who remember keyboard shortcuts and care about playlist structure or video metadata. Keep another tool for downloading media or conducting broad discovery across many unrelated channels.
Technical notes+
go.mod declares module github.com/nroyalty/yt-browse, Go 1.25.0, Bubble Tea v2, Bubbles v2, Lip Gloss v2, github.com/sahilm/fuzzy, and the Google API client. This conflicts with README.md, which says Go 1.21+. internal/tui/app.go owns view, loading, filtering, sorting, refresh, picker, and cancellation state. internal/tui/filter.go converts fuzzy byte offsets to rune indices for correct highlighting. internal/cache/cache.go stores gzip-compressed JSON, accepts legacy uncompressed entries, expires entries by TTL, and evicts channel directories when total cache size exceeds 200 MB. internal/tui/commands.go uses platform-specific browser launchers for Darwin, Linux, and Windows. internal/config/config.go requires YT_BROWSE_API_KEY and exposes cache directory and TTL configuration. internal/recent/recent.go persists up to 100 recently used channels.
Observed
- Primary language
- Go
- Interface
- Keyboard-driven terminal user interface with a channel argument
- Installation surface
- Build from source with Go, or use the included shell installer to build and copy the binary into ~/bin/
- External service
- Requires a YouTube Data API v3 key supplied through an environment variable
- Platform integration
- Browser opening has explicit handlers for Darwin, Linux, and Windows
- Local storage
- Channel metadata is cached as gzip-compressed JSON with configurable expiry and a 200 MB eviction threshold
Read from README.md, go.mod, internal/tui/app.go, internal/tui/keys.go, internal/tui/detail.go, internal/tui/filter.go, internal/tui/styles.go, internal/cache/cache.go, internal/tui/commands.go, internal/tui/delegate.go, internal/tui/messages.go, internal/config/config.go, internal/recent/recent.go, internal/youtube/types.go, internal/tui/video_item.go.
What it can do
Search YouTube channel playlists using regex patterns
YouTube channel URL and regex search pattern → Filtered list of matching playlists
Search YouTube channel videos using fuzzy search
YouTube channel URL and fuzzy search query → Ranked list of matching videos
Filter videos by upload date range
YouTube channel data and date range parameters → List of videos within specified date range
Sort channel videos by various criteria
YouTube channel videos and sorting parameters → Reordered list of videos by chosen criteria
Cache YouTube channel data locally
YouTube channel URL → Local cached database of channel content
Perform instant search through cached channel data
Search query and locally cached channel data → Real-time search results from cache
Tags
Tech Stack
Media
Comments (0)
No comments yet
Editorially curated, with community endorsements as a secondary signal. Corrections welcome.