lolcat-rs

Crates.iololcat-rs
lib.rslolcat-rs
version0.2.0
created_at2025-12-31 13:22:21.27442+00
updated_at2026-01-01 17:57:12.727166+00
descriptionA high-performance, vibrant rainbow coloring tool for your terminal
homepage
repositoryhttps://github.com/umairimtiaz9/lolcat-rs
max_upload_size
id2014671
size11,586
Umair Imtiaz (umairimtiaz9)

documentation

README

🌈 lolcat-rs

The high-performance, vibrant rainbow coloring tool for your terminal.

lolcat-rs is a blazingly fast, memory-safe rewrite of the classic lolcat tool in Rust. It brings the full rainbow spectrum to your terminal output with zero runtime dependencies and perfect TrueColor support.

Rainbow Terminal Example

✨ Features

  • 🚀 Blazing Fast: Written in pure Rust, capable of processing gigabytes of text instantly.
  • 🎨 TrueColor Support: Outputs 24-bit RGB colors for the smoothest gradients possible (16 million colors!).
  • 🔮 Zero Dependencies: Statically linked binary. No Python, Ruby, or gems required.
  • 💎 Exact Parity: Mathematical replication of the original sine-wave rainbow algorithm.
  • 📄 Binary Safe: Handles binary files and invalid UTF-8 gracefully (like cat).
  • 💡 Saturation Boost: Tuned for slightly more vibrant, brighter colors than the original.

📦 Installation

From crates.io

cargo install lolcat-rs

From Source

git clone https://github.com/umairimtiaz9/lolcat-rs.git
cd lolcat-rs
cargo install --path .

🚀 Usage

Pipe any command into lolcat-rs:

ls -la | lolcat-rs

Or read files directly:

lolcat-rs README.md

Options

Flag Description Default
-f, --freq <float> Rainbow frequency (rainbow tightness) 0.1
-s, --spread <float> Rainbow spread (gradient speed) 2.6
-h, --help Show help message

🔧 Comparison

Feature Ruby (Original) Python (Port) lolcat-rs
Startup Time Slow (VM) Medium (VM) Instant
Color Depth 256/TrueColor 256 TrueColor (24-bit)
Memory Usage High Medium Minimal
Dependencies Ruby Gems Python None

📜 License

Distributed under the MIT License. See LICENSE for more information.


Built with 🦀 and ❤️

Commit count: 0

cargo fmt