Kyle Greenan

Vibe Tools

15 April 2026

image of wrenches

If there’s one thing that defines progress, it’s the proliferation of useful tools. From the simplest checklist app to complex, resource-intensive back-ends, tools make life easier and solve problems efficiently. The barrier to entry for building these tools has never been lower and thanks to AI, the creative power available is limitless. All you need is an idea.

AI isn’t just for building the function of the tool; it’s increasingly becoming a co-pilot in the creation process. The goal is no longer to write every line of code, but to orchestrate.

That’s where the integration of AI becomes revolutionary.

For years, we’ve relied on specialized tools to do the stuff we want. But what happens when those perfect tools don’t live where we need them to? Or when we need them to work across multiple formats, run in a terminal, all without requiring a mountain of config files or flags to memorize?

Introducing tui-img

After some initial discovery work, I shipped tui-img, my first vibe coded tool. This project started as a quick weekend thought experiment: “What if I could make a tool like ImageOptim to compress images, but for the command line?”

The result is a pure, efficient, terminal-based utility that makes image management feel effortless.

I built it with AI. In Rust. Because why not?

About tui-img

tui-img is designed for efficiency and simplicity. It’s a command-line utility built to handle batch image compression and conversion in a delightful, tui interface.

image of wrenches

Features:

  • Batch Compression - Compress multiple images at once with configurable settings
  • Format Conversion - Convert between JPEG, PNG, WebP, GIF, TIFF, BMP, and TGA formats
  • EXIF Management - Keep or remove image metadata
  • Resize Images - Set maximum width/height with Lanczos3 resampling
  • Virtual Scrolling - Handle directories with thousands of files
  • Metadata Caching - Fast directory navigation with cached metadata
  • Parallel Processing - Uses rayon for parallel EXIF loading and directory scanning
  • Auto Unique Filenames - Creates file_2.ext when filenames would conflict
  • Auto Directory Creation - Output directories are created automatically if they don’t exist
  • Smart Settings Navigation - Arrow keys in Image Settings panel automatically skip irrelevant options based on output format

Installation:

# From crates.io (Recommended)
 $ cargo install tui-img

 # From Source:
 $ git clone https://github.com/howdyitskyle/tui-img.git 
 $ cd tui-img 
 $ cargo build --release 
 $ ./target/release/tui-img

Check it out: