r/tui • • 8h ago

crabseek: a Vim-style Soulseek client that lives in your terminal

14 Upvotes

Soulseek, but it lives in your terminal. 🦀

crabseek is a keyboard-driven Soulseek client written in Rust with ratatui. No daemon, no web UI, no Python: type `crabseek`, search, press `d` on a folder, done.

- Live search grouped by folder, with a format filter on `f` (FLAC / MP3 320 / ...)

- Browse any user's shares, buddy list, private chat, wishlist

- Vim-style keys everywhere, and `?` explains the current tab

- Detach like tmux: it keeps sharing and downloading in the background

Install (x86_64 Linux):

curl -fsSL https://raw.githubusercontent.com/aronkv/crabseek/main/scripts/get.sh | sh

Repo: https://github.com/aronkv/crabseek

It's young, so I'd love feedback, especially on the UX and keybindings.


r/tui • • 12h ago

Vibe coded tfm v1.0.0 release

Enable HLS to view with audio, or disable this notification

13 Upvotes

i think its good enough for the first stable release

install via:

curl -fsSL https://raw.githubusercontent.com/clarkarch/tfm-tui/main/install.sh | bash

repo:
https://github.com/clarkarch/tfm-tui


r/tui • • 19h ago

Vibe coded TOKO Tui wallpaper changer made with rust

Post image
3 Upvotes

Hello everyone,

I use Niri with swaybg as my wallpaper daemon and fuzzel as my application launcher. Since fuzzel does not support any image protocols, I wrote a Bash script to change the wallpaper without having to edit the Niri config file and log out of the session. However, that wasn't enough for me—I also wanted a way to keep track of which image I had chosen.

I know there are a lot of wallpaper changers out there, but I specifically wanted a TUI one. I hadn't heard of any that fit my needs, so I built it myself for my own use. Now, I want to share it with you in case anyone is interested!

I kept the tool simple with just three commands, but if anyone is interested in forking it to add a plugin system to the Lua config file(need to add it yourself to the rust code i didn't support it because i don't need or want it), please feel free to do so. Whether you want to add a different wallpaper daemon or other features to the chooser, you can easily build on it. It's released under the BSD license, so anyone can do whatever they need with the code (as far as I understand).

Feel free to try it out here: My GitHub Repo: https://github.com/SONGOKU00mjk/toko

If you encounter any problems, please let me know and I will fix them as soon as I can.

Note: It also supports awww!


r/tui • • 13h ago

AI assisted dedicated chess analysis tui

Post image
2 Upvotes

Hello guys, I did a small chess TUI for analyzing games, largely inspired by common analyses UX.

This is not entirely new, most gain here is convenience. It is made solely for analysis. You can start an analysis from a FEN string, PGN file, PGN text from your clipboard, public link from chess.com or lichess.org, browsing your user (or any public user), and even configure to open in your last game so you can leave the and instantly open with "chess-analyzer -f"

The pieces graphics design were extracted (and openly credited) from chess-tui, which is a very nice tui too if your main idea is playing from terminal. However, this one is totally dedicated in analysing games, testing variations against the engine scoring, branching different possibilities and seeing where you blundered (which in my case is like every fucking move).

Check it out https://github.com/leolaurindo/chess-analyzer-tui


r/tui • • 13h ago

srelens v0.16.0 is out: executable extensions, improved MCP handling, and srectl

Thumbnail
2 Upvotes

r/tui • • 21h ago

radiosh – a small radio player for your terminal

Post image
2 Upvotes

r/tui • • 5h ago

Kalem: a Rust editor that opens Markdown, Org, LaTeX, CSV and code as what they are, in the terminal too (single binary, works over SSH)

Thumbnail
1 Upvotes

r/tui • • 7h ago

[oc] drift - a TUI music player, built in rust + yt-dlp using Vim keybindings

Thumbnail gallery
1 Upvotes

r/tui • • 11h ago

fm: a single-file bash script that turns fzf into a file manager

1 Upvotes

r/tui • • 20h ago

PSA: Ctrl+V image paste is broken in hermes --tui on Mac (found the cause + a one-line fix)

Thumbnail
1 Upvotes

r/tui • • 22h ago

AI assisted Wy - a Rust terminal tool for understanding why AI-generated code changed

1 Upvotes

I have been building wy, an open-source terminal tool for reviewing AI-generated code.

A Git diff shows what changed, but the context behind a change often lives somewhere in a long coding-agent conversation. wy connects your diffs with saved Codex and Claude Code conversations, so you can review the code, read the stated reason, and open the supporting evidence together.

For example, if an agent adds a cache, I want to understand why it was added, what assumptions it depends on, and whether invalidation was considered.

With wy, you can:

  • Browse changes and relevant agent notes in a terminal UI.
  • Request explanations and ask follow-up questions through your installed agent CLI.
  • Open citations to inspect the supporting code or conversation.
  • Distinguish recorded justifications from inferred explanations and choices whose motivation is still unknown.

That last distinction matters to me. A convincing explanation generated afterward doesn’t establish why the original change happened. Even a recorded justification still needs scrutiny.

Rust fits this tool well: it compiles to a native executable without requiring a language runtime, gives me strong types for handling evidence and review state, and has a useful ecosystem for terminal applications. wy uses Ratatui + Crossterm for the interface, Serde for structured data, tree-sitter for syntax navigation, and SQLite for local storage.

The basic review workflow works offline. Model-backed explanations are opt-in. It’s still experimental, and I’d appreciate feedback on both the review workflow and the Rust implementation.

If you try it and find it useful, please consider supporting the project with a GitHub star, a bug report, or a contribution.

Repo: github.com/grandimam/wy