Skip to content

NullSeile/wstui

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

39 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

wstui

This is very much a work in progress.

A WhatsApp client for the terminal. Built in Rust with ratatui, it uses the whatsmeow backend and gives you a keyboard-driven, vim-style TUI to chat.

Requirements

  • Rust (2024 edition; recent stable toolchain)
  • Go (Testet with 1.26.0)

Building

cargo build --release

Usage

# Start and link with QR code (shown in terminal)
cargo run

# Link with phone number (pairing code will be printed)
cargo run -- -p +1234567890
# Start and link with QR code (shown in terminal)
./target/release/wstui

# Link with phone number (pairing code will be printed)
./target/release/wstui --phone +1234567890

On first run the client creates whatsmeow_store.db (session) and uses a media/ directory for downloaded files. The local message cache is in whatsapp.db.

Keybindings

General
Quit Ctrl+Q
Toggle logs Ctrl+Shift+L
Focus / navigation
Chat list → Message list Ctrl+L (when focus is on chat list)
Message list → Input Ctrl+J
Input → Message list Ctrl+K
Input → Chat list Ctrl+H
Message list → Chat list Ctrl+H
Chat list
Next / previous chat j / k
Open chat (focus input) Enter
Message list
Next / previous message j / k
First / last message G / g g
Scroll view Ctrl+E / Ctrl+Y
Reply to selected message r
Go to quoted message g q
Open message view (full content) Enter
Message view
Close back to list Esc
Input
Send message Ctrl+X
Clear quote Ctrl+R
Input (Vim) i Insert, Esc Normal, then h/j/k/l, w/e/b, ^/$, d/c/p/y, etc.

Image protocol (halfblocks vs sixels) can be cycled with Ctrl+P if your terminal supports it.

About

WhatsApp tui written in rust based on the go library whatsmeow

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors