9 releases
| 0.0.10 | Jan 15, 2026 |
|---|---|
| 0.0.9 |
|
| 0.0.8 | Feb 26, 2025 |
| 0.0.3 | Aug 15, 2023 |
#557 in Command-line interface
155KB
3K
SLoC
bsky_tui
Bluesky client for the terminal

Overview
bsky_tui is a terminal-based client for Bluesky. Through a command-line interface, you can access the main features of Bluesky. Using a Text User Interface (TUI), you can efficiently browse timelines, create posts, like, repost, reply, and more using just your keyboard.
Features
- View and browse home timeline
- View and browse notifications
- Search for posts
- Create new posts
- Reply to posts
- Like/unlike posts
- Repost/unrepost posts
- Open posts in browser
Installation
Build from source
git clone https://github.com/ksk001100/bsky_tui
cd bsky_tui
cargo install --path .
Install using Cargo
cargo install bsky_tui
Configuration
You need to generate a configuration file on first launch:
bsky_tui config
This will generate a configuration file at:
- Linux/macOS:
~/.config/bsky_tui/config.toml - Windows:
~\AppData\Roaming\bsky_tui\config.toml
Edit the generated configuration file and set the following required fields:
email = "your.email@example.com" # Your Bluesky account email
password = "your_password" # Your Bluesky account password
skip_splash = false # Whether to skip the splash screen (optional)
splash_path = "" # Path to a custom splash screen (optional)
Usage
# Show help
bsky_tui --help
# Generate config file
bsky_tui config
# Launch the application
bsky_tui
Keybindings
Common
q,Esc,Ctrl+c: ExitTab: Switch tabs (Home → Notifications → Search → Home)?: Show help
Home Tab
j,Down,Ctrl+n: Scroll downk,Up,Ctrl+p: Scroll uph,Left: Previous pagel,Right: Next pager: Reload timelinen: New postN: Reply to selected postCtrl+l: Like/unlikeCtrl+r: Repost/unrepostEnter: Open selected post in browser/: Switch to search mode
Notifications Tab
j,Down,Ctrl+n: Scroll downk,Up,Ctrl+p: Scroll upr: Reload notifications/: Switch to search mode
Search Tab
j,Down,Ctrl+n: Scroll downk,Up,Ctrl+p: Scroll uph,Left: Previous pagel,Right: Next pager: Reload search resultsN: Reply to selected postCtrl+l: Like/unlikeCtrl+r: Repost/unrepostEnter: Open selected post in browser/: Switch to search mode
Post/Reply Mode
Esc: CancelEnter: Send post/replyLeft,Ctrl+b: Move cursor leftRight,Ctrl+f: Move cursor rightCtrl+a: Move cursor to startCtrl+e: Move cursor to endBackspace,Ctrl+h: Delete previous character
Search Input Mode
Esc: CancelEnter: Execute searchLeft,Ctrl+b: Move cursor leftRight,Ctrl+f: Move cursor rightCtrl+a: Move cursor to startCtrl+e: Move cursor to endBackspace,Ctrl+h: Delete previous character
Development
Dependencies
- crossterm: Terminal manipulation
- ratatui: TUI framework
- tokio: Async runtime
- bsky-sdk: Bluesky SDK
- atrium-api: Bluesky API client
- seahorse: CLI framework
Build
cargo build
Test
cargo test
License
See the LICENSE file.
Contributing
- Fork this repository
- Create a feature branch (
git checkout -b my-new-feature) - Commit your changes (
git commit -am 'Add some feature') - Push to the branch (
git push origin my-new-feature) - Create a new Pull Request
Author
- Keisuke Toyota (@ksk001100)
Dependencies
~20–41MB
~618K SLoC