r/commandline

▲ 162 r/commandline+1 crossposts

Pokeductor – a terminal Pokédex with sprite-rendered evolution chains, type coverage and party analysis (Rust + ratatui)

It all began with "I just want to look up Pokémon without having to leave my terminal," but it sort of got away from me after that. Presenting pokeductor, a Pokédex in your terminal, made with Rust and ratatui.

Features

  • 1,351 entries: species and alternate forms, with filtering by type (type:ghost), generation (gen:1), ability (ability:levitate), or simply the species number (25 for Pikachu).
  • Evolution families: connected sprite cards showing branching evolution lines. Big ones like Eevee's can go fullscreen with F.
  • Team builder: add up to 6 Pokémon to find overlapping weaknesses, missing resistances, and gaps in super-effective coverage.
  • Shiny mode: hit X to recolor every sprite in sight right away.
  • Terminal-friendly: Unicode half-block rendering with truecolor, a 256-color fallback, and a classic 4-shade Game Boy mode (--theme dmg).
  • Vim controls: full Vim navigation, help with ?, and disk caching.

Installation

cargo install pokeductor
yay -S pokeductor          # Arch (AUR)

Also available pre-built for Linux, macOS, and Windows via GitHub Releases.

GitHub repository: github.com/Huseynteymurzade28/pokeductor

Open source (MIT). Any comments (strange key bindings, cursed terminal rendering, feature suggestions) are welcome!

u/Minute_Ambassador751 — 4 days ago
▲ 28 r/commandline+1 crossposts

pdfmt - I wrote a multi tool, cause I got tired of manual duplex scanning for my family's paperwork

Taking over the paperwork for my aging parents meant dealing with a mountain of legacy documents and a Brother ADF scanner that is quite fast but only supports simplex. Being happily frugal, I wasn't about to drop money on a new duplex scanner while my current hardware works totally fine. Handling mixed stacks of single- and double-sided pages through GUI tools became a massive time bottleneck.

So, I wrote several simple scripts to do the dirty work for me. All those scripts evolved into a lightweight, transparent CLI tool to automate the work without any heavy frameworks or bloat.

Instead of clicking through endless menus, moving pages in previews, and so on I can now process stacks right from the terminal with an easy interface:

# Example 1: 
# Scan a stack of 1-page documents (invoices, delivery notes, etc.) via ADF and split it into individual files with prefix "invoice_"
# Workflow:
# - scan all invoices
# - split all pages into individual files with prefix "invoice_"

pdfmt scan adf invoices.pdf
pdfmt split all invoices.pdf invoice_



# Example 2: 
# Scan a stack of 2-sided documents (1 physical sheet, printed on both sides), but your scanner _DOES NOT_ have a duplex ADF.
# Workflow:
# - scan all front sides
# - flip the stack over, put it back in the ADF, and scan the back sides
# - merge both files in correct page order
# - split the result into chunks of 2 pages with prefix document_

pdfmt scan adf front.pdf
pdfmt scan adf back.pdf
pdfmt merge duplex front.pdf back.pdf documents.pdf
pdfmt split length 2 documents.pdf document_

It's built for a real-world workflow to handle thousands of documents, saved me weeks of time, works on Linux, macOS (and WSL) and you can easily integrate it into your own scripts and workflows. There are more features in this tool, check out the readme.

If you deal with similar paper hell or just like simple CLI tools, check it out here:

👉 https://www.github.com/eifelcode/pdfmt

I'm also open for feedback on how to improve my script, architecture and workflow. =)

AI notice: AI (mistral) was used to generate parts of the README.md, the .github workflow, the code coverage tool, and parts of the unit tests in the tests/ folder. Architecture, Makefile, and code within the sources/ folder is written by me

u/eifelcode — 8 days ago

zerobrew is now 100x faster* than homebrew

...On warm installs of single packages, tbf.

24 of the 100 most installed Homebrew formulae came in at 100x or more, ca-certificates was 252x. across all 100 it's 68x warm and 6.6x cold. If you would like to see the full results (or run them yourself!), you can go here.

zerobrew is a drop-in replacement for homebrew.

The thing I think this sub will actually like is zbx. it's similar tonpx/uvx but for homebrew packages.

$ zbx tokei .
$ zbx hyperfine 'zb install jq'

To be clear about what this is: every package zerobrew installs was built, tested and published by Homebrew's bottle farm. we don't compile anything and don't maintain formulae. The speed comes from how the artifacts get installed, not from what's in them. Homebrew did the hard part already and we rely on it completely.

repo: https://github.com/zerobrewhq/zerobrew results: https://github.com/zerobrewhq/zerobrew/tree/main/results

reddit.com
u/cachebags — 7 days ago

I created parse to solve the problem of messy cli outputs

I create parse to solve the problem of messy and non-understandable outputs. Parse make the outputs of the currently supported commands into easily understandable and format.

It is single go binary and standard library only.

We can use it like parse COMMAND or COMMAND | parse . You can install it by

go install github.com/atif-1402/parse@latest

Would love to hear peoples feedback on this project - https://github.com/atif-1402/parse

u/Desperate_Lion5740 — 8 days ago

Ctrl+Z is spammed without pressing anything (WSL CLI only)

I am running a WSL module of ubuntu on windows. This issue started a week ago... I was trying to solve it for 3 days but got fed up bcz of no results ... I am living with it now and this is genuinely making me annoyed as I can't get my work done

PLS GIVE ANY POSSIBLE SOLUTIONS

I had to remove its function to even run basic commands ... It spams only in command linec

u/Relevant-Anything-46 — 7 days ago
▲ 6 r/commandline+1 crossposts

Windows native terminal with CRT emulation - Scanline Term

I had always wanted a modern Windows terminal that emulated a CRT monitor—something like Cool Retro Term for Linux. However, nothing of the sort existed for Windows, aside from a rather pathetic attempt at simulating scanlines in Microsoft Terminal. Even when Cool-Retro was eventually ported to Windows, the quality of the effects in the port seemed inferior to the Linux version.

At the time, I was developing a game and its custom engine -- featuring a highly realistic, deeply customizable CRT simulation (inspired by Cool-Retro) -- because the game was about hackers and geeks in 1980s, requiring interaction with a wide variety of computers and terminals. Then it hit me: I could take that shader from the game, combine it with the native Windows ConPTY, and easily create a Cool Retro Term equivalent -- one that was even more realistic and customizable, and ran natively on Windows. The first prototype was ready in just a couple of days, and it worked beautifully! Of course, it required a lot of polishing, and I also wanted to implement several other useful features, such as:

  • Multi-tab support with individual style settings.
  • Console buffer search, quick text copying via the middle mouse button, etc.
  • Smooth, pixel-perfect vertical scrolling- both in the shell and in applications like Vim.
  • A built-in mini web browser optimized for keyboard control. Useful for keeping documentation or a web service right inside the terminal.
  • A mode for viewing all terminal sessions as thumbnails - "Win-Tab" style.
  • A GUI settings panel (you can also just simply edit the JSON config).
  • The ability to open new tabs with specific CRT-theme directly from the command line.
  • A toggleable AI assistant panel based on Codex that can interact with the console on your behalf or collaborate with you.

Regarding that last feature -- I realize people often look askance at apps that integrate with generative LLMs. But let’s be honest: these days, AI is being shoehorned into almost every piece of software, whether it makes sense or not. But in this specific case, it is more than justified. I believe it’s incredibly useful to be able to ask the AI in plain English to turn a request into a PowerShell command, help configure Vim, construct a complex SQL query, and so on, right within the terminal. The key advantage here is that you see everything it writes to the console, allowing you to learn new commands and tricks. It embodies the IBM principle: the machine should do the work, while the human makes the decisions. And if you’re an expert, you can simply disable the panel.

I’ll admit it: Scanline Term itself was created with some AI assistance. It wasn't exactly "vibe coding," but rather agent-based development where I handled the architecture and high-level functions, while the AI ​​did the grunt work. Nevertheless, it is a native, polished, and compact application -- clocking in at around 19 MB, it launches instantly, is memory-efficient, and runs fast.

By the way, the CRT simulation has a strange psychological effect - at least for me. It boosts concentration and focus on the text. When it’s running in full-screen mode, glowing and "breathing" with that analog feel, it somehow draws me in and helps me concentrate. While I used to work in the console only sporadically, now I actually want to jump in and immerse myself in that cozy phosphor glow -- just me and the code, the text, or a technical process. I experience something similar with vintage tube amplifiers and speakers; their unique sound draws me in and shuts out the outside world - a world that has hooked us all on quick dopamine hits.

In any case, this product turned out to be unexpectedly useful to me. I’d be happy if it proves helpful to others, too, and I’m always grateful for any feedback.

https://github.com/z-hunter/Scanline-Term

u/Michael_Voitovich — 11 days ago