A HexChat-style Telegram client for power users
Text-first. Keyboard-driven. No bloat.
Features โข Installation โข Usage โข Commands โข Philosophy โข Building
- IRC/HexChat aesthetic โ Messages displayed as clean text, not bubbles
- Monospace font โ Perfect alignment, easy to scan
- Inline media indicators โ
๐ท [Photo],๐ฌ [Video],๐ค [Voice 0:15] - Click to preview โ Minimal popup, no clutter
- Slash commands โ
/me,/clear,/query,/whois,/leave - Quick navigation โ
Ctrl+PgUp/PgDnto switch chats - Tab completion โ Complete usernames with
Tab - Command history โ
โ/โto recall previous messages
- Virtualized rendering โ Only visible messages are drawn
- Lazy loading โ Chats and history load on-demand
- Reactive architecture โ No UI freezes, ever
- Native performance โ C++ with wxWidgets
- All chat types โ Private, groups, supergroups, channels, bots
- Media playback โ Photos, videos, GIFs, stickers, voice notes
- Read receipts โ
โsent,โโread - Typing indicators โ See who's typing in real-time
- Online status โ ๐ข Green dot for online users
- Reactions display โ See reactions from others (read-only by design)
yay -S teleliter-git# Install dependencies
sudo apt install build-essential cmake libwxgtk3.2-dev libssl-dev \
zlib1g-dev libwebp-dev libavformat-dev libavcodec-dev libswscale-dev \
libswresample-dev libavutil-dev libsdl2-dev librlottie-dev
# Build TDLib (see Building section)
# Then build Teleliter
git clone https://github.com/1ay1/teleliter.git
cd teleliter && mkdir build && cd build
cmake .. && make -j$(nproc)
./teleliterbrew install wxwidgets tdlib ffmpeg sdl2 webp rlottie
git clone https://github.com/1ay1/teleliter.git
cd teleliter && mkdir build && cd build
cmake .. && make -j$(sysctl -n hw.ncpu)
./teleliter- Run
./teleliter - Enter your phone number (with country code:
+1234567890) - Enter the verification code from Telegram
- Start chatting!
| Key | Action |
|---|---|
Ctrl+PgUp |
Previous chat |
Ctrl+PgDn |
Next chat |
Ctrl+W |
Close chat |
F7 |
Toggle member list |
F9 |
Toggle chat list |
F11 |
Fullscreen |
Ctrl+L |
Login |
Ctrl+E |
Preferences |
/me <action> Send an action message (* You does something)
/clear Clear the chat window
/query <user> Open a private chat with user
/whois <user> View user information
/leave Leave the current chat
/help Show all available commands
Example:
/me is excited about Teleliter
โ * YourName is excited about Teleliter
Teleliter follows the Unix philosophy applied to messaging:
Do one thing well: Display and send messages.
โ
Display all Telegram content beautifully in text
โ
Send messages quickly with keyboard
โ
Show reactions, edits, and read receipts
โ
Preview media with minimal UI
โ Reaction picker (use official app)
โ Message editing UI (use official app)
โ Sticker browser (use official app)
โ Voice recording (use official app)
This isn't a limitation โ it's a feature. Teleliter is for reading and quick replies, not for composing elaborate multimedia messages.
| Library | Version | Purpose |
|---|---|---|
| TDLib | 1.8+ | Telegram API |
| wxWidgets | 3.2+ | GUI framework |
| FFmpeg | 5.0+ | Media playback |
| SDL2 | 2.0+ | Audio output |
| libwebp | 1.0+ | WebP stickers |
| rlottie | 0.2+ | Animated stickers |
TDLib must be built from source and installed to ~/.local:
git clone https://github.com/tdlib/td.git
cd td && mkdir build && cd build
cmake -DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_PREFIX=~/.local ..
cmake --build . -j$(nproc)
cmake --install .git clone https://github.com/1ay1/teleliter.git
cd teleliter
mkdir build && cd build
cmake ..
make -j$(nproc)MIT License โ See LICENSE for details.
- TDLib โ The backbone of this client
- HexChat โ Inspiration for the UI
- wxWidgets โ Cross-platform GUI
If you love keyboard-driven interfaces, give Teleliter a โญ!
Made with โค๏ธ for power users who miss the days of IRC
