bbcli Browse BBC News like a hacker. A terminal-based BBC News reader built with Rust and ratatui, featuring a compact, numbered list interface with vim-like navigation. Note: This is a complete rewrite of bbcli in Rust. installation Using eget (Recommended) Download pre-built binaries: eget hako/bbcli GitHub Releases Download pre-built binaries for your platform from GitHub Releases: Available for: Linux : x86_64 (gnu/musl), aarch64 (gnu/musl) : x86_64 (gnu/musl), aarch64 (gnu/musl) macOS : x86_64 (Intel), aarch64 (Apple Silicon) : x86_64 (Intel), aarch64 (Apple Silicon) Windows : x86_64 : x86_64 BSD: FreeBSD, NetBSD Using cargo-binstall (Also Recommended) Fast binary installation without compiling: # Install cargo-binstall first if needed # See: https://github.com/cargo-bins/cargo-binstall cargo binstall bbc-news-cli From crates.io # Install from crates.io cargo install bbc-news-cli From source git clone https://github.com/hako/bbcli cd bbcli cargo build --release cargo install --path . terminal compatibility bbcli works best in modern terminals with full Unicode and image protocol support: Recommended terminals: WezTerm - Excellent image support (Sixel, Kitty, iTerm2) Ghostty - Fast, GPU-accelerated with Kitty protocol Rio - Modern, hardware-accelerated Alacritty - Fast, minimal (Halfblocks mode for images) Kitty - Full Kitty graphics protocol support iTerm2 (macOS) - Inline images protocol Image protocols: Press p to cycle through: Auto / Halfblocks / Sixel / Kitty to cycle through: Auto / Halfblocks / Sixel / Kitty Auto mode detects your terminal's capabilities Halfblocks works in all terminals (Unicode-based) usage # Launch interactive TUI bbcli # Or use CLI mode (see below) bbcli list cli mode: bbcli includes a powerful CLI mode for quick access to headlines and articles without launching the full TUI. List Headlines # List top stories bbcli list # List from specific feed bbcli --feed world list bbcli --feed technology list bbcli --feed business list Open Article in Browser # Open article #3 in browser bbcli open 3 # Open from specific feed bbcli --feed technology open 1 Show Article in Terminal # Read article #2 in terminal (reader mode) bbcli show 2 # Show article from specific feed bbcli --feed world show 5 Available Feeds Use -f or --feed with any of these feeds: top (default) - Top Stories (default) - Top Stories world - World News - World News uk - UK News - UK News business / biz - Business / - Business politics / pol - Politics / - Politics health - Health - Health education / edu - Education & Family / - Education & Family science / sci - Science & Environment / - Science & Environment technology / tech - Technology / - Technology entertainment / ent - Entertainment & Arts / - Entertainment & Arts Regional: england , scotland , wales , northern ireland , , , International: africa , asia , europe , latin america , middle east , us & canada tui keyboard shortcuts: Navigation Key Action j / ↓ Scroll down k / ↑ Scroll up G Scroll to bottom l Go to latest (top) Actions Key Action o Open article in browser O Open article in new tab Space Jump to current ticker article r Refresh news Views Key Action Tab Toggle preview pane a / Enter Open full article view f Open feed selector ? Toggle help menu Settings Key Action s Cycle sort order (Default / Newest First / Oldest First) t Toggle date format (humanized / absolute) T Cycle theme (light / dark) p Cycle image protocol (Auto / Halfblocks / Sixel / Kitty) Other Key Action q / Esc Quit Feed Menu Press f to open the feed menu and switch between different BBC News feeds: Top Stories (default) World UK Business Politics Health Education & Family Science & Environment Technology Entertainment & Arts Regional feeds (England, Northern Ireland, Scotland, Wales) International regions (Africa, Asia, Europe, Latin America, Middle East, US & Canada) Navigate with j / k or arrow keys, press Enter to select, f or Esc to close. Features Preview Pane Press Tab to toggle the preview pane, which displays a 80/20 split showing: Article image (with configurable image protocol support) Title and description Publication date and feed name Full Article View Press Enter or a to open the full article view with reader mode: Clean, distraction-free article text Scrollable with j / k or arrow keys / or arrow keys Press Tab , Enter , or Esc to return to list view Story Sorting Press s to cycle through sort orders: Default : RSS feed order (as received) : RSS feed order (as received) Newest First : Sort by publication date, newest at top : Sort by publication date, newest at top Oldest First: Sort by publication date, oldest at top Sort order persists across manual and automatic refreshes. Ticker Navigation The footer displays breaking news headlines from Top Stories feed, rotating every ~10 seconds. Press Space to instantly jump to the current ticker article in the feed. The app automatically refreshes news every 5 minutes, keeping stories visible during refresh (no loading placeholder). Themes Press T to cycle between light and dark themes. The default theme can be set in your config file. Offline Mode bbcli automatically caches feeds and articles to disk for offline reading: To clear the cache: rm -rf ~ /.bbcli/cache/ Custom keybindings can be defined in either: $HOME/.bbcli Or: $HOME/.config/bbcli See example-config.toml for all available options: # Theme: "light" or "dark" (default: "dark") theme = " dark " [ keybindings ] quit = ' q ' open = ' o ' open_new_tab = ' O ' refresh = ' r ' latest = ' l ' scroll_up = ' k ' scroll_down = ' j ' scroll_bottom = ' G ' Copy the example config: cp example-config.toml ~ /.bbcli Or create your own custom configuration with preferred keybindings and theme. credits Inspired and extended by the original bbcli python version. license MIT