A Rust based utilty toolbox for developers. Inspired from https://it-tools.tech
Rust
1,206
156 commits
updated May 8, 2026
utA fast, lightweight CLI utility toolkit for developers and IT professionals. ut provides a comprehensive set of commonly-used tools in a single binary, eliminating the need to install and remember multiple utilities or search for random websites to perform simple tasks.
brew install ksdme/tap/ut
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/ksdme/ut/releases/latest/download/ut-installer.sh | sh
powershell -ExecutionPolicy Bypass -c "irm https://github.com/ksdme/ut/releases/latest/download/ut-installer.ps1 | iex"
cargo install --git https://github.com/ksdme/ut.git
You can also download prebuilt binaries directly from the releases page.
ut supports shell completions for bash, zsh, fish, nushell, elvish, and PowerShell. To enable tab completion:
# Generate and save completions to your fpath
ut completions zsh > ~/.zsh/completions/_ut
# Or add directly to .zshrc (requires reload for each ut update)
echo 'eval "$(ut completions zsh)"' >> ~/.zshrc
ut completions bash > ~/.local/share/bash-completion/completions/ut
# Or add to .bashrc
echo 'eval "$(ut completions bash)"' >> ~/.bashrc
ut completions fish > ~/.config/fish/completions/ut.fish
ut completions nushell > ~/.config/nushell/completions/ut.nu
# Or use the short alias
ut completions nu > ~/.config/nushell/completions/ut.nu
ut completions powershell | Out-File -FilePath $PROFILE -Append
After setting up completions, restart your shell or source your configuration file.
├── Encoding
│ ├── base64 - Base64 encode/decode
│ │ ├── encode
│ │ └── decode
│ └── url - URL utilities
│ ├── parse
│ ├── encode
│ └── decode
├── Hashing & Security
│ ├── hash - Cryptographic hash digests
│ │ ├── md5
│ │ ├── sha1
│ │ ├── sha224
│ │ ├── sha256
│ │ ├── sha384
│ │ └── sha512
│ ├── bcrypt - Password hashing and verification
│ │ ├── hash
│ │ └── verify
│ └── jwt - JWT (JSON Web Token) utilities
│ ├── encode
│ ├── decode
│ └── verify
├── Data Generation
│ ├── uuid - Generate UUIDs
│ │ ├── v1
│ │ ├── v3
│ │ ├── v4
│ │ ├── v5
│ │ └── v7
│ ├── token (secret, password) - Generate secure random tokens
│ ├── lorem - Generate lorem ipsum text
│ └── random - Generate random numbers
├── Text Processing
│ ├── case - Convert text case formats
│ │ ├── lower
│ │ ├── upper
│ │ ├── camel
│ │ ├── title
│ │ ├── constant
│ │ ├── header
│ │ ├── sentence
│ │ ├── snake
│ │ └── kebab
│ ├── pretty-print (pp) - Unescape newlines and tabs
│ └── diff - Compare text with visual output
├── Development Tools
│ ├── calc (cal) - Expression calculator
│ ├── json - JSON builder and utilities
│ │ └── builder
│ ├── regex - Interactive regex tester
│ ├── crontab - Cron utilities
│ │ └── schedule
│ └── datetime (dt) - Parse and convert datetimes
├── Web & Network
│ ├── ip - IP & CIDR utilities
│ │ └── cidr
│ │ └── describe
│ ├── http - HTTP utilities
│ │ └── status
│ ├── serve - Local HTTP file server
│ └── qr - Generate QR codes
├── Color & Design
│ └── color - Color utilities
│ └── convert
└── Reference
└── unicode - Unicode symbol reference
base64Encode and decode data using Base64 encoding.
ut base64 encode "hello world"
ut base64 decode "aGVsbG8gd29ybGQ="
ut base64 encode --urlsafe "hello world"
echo -n "hello world" | ut base64 encode -
urlURL encode, decode, and parse.
ut url parse "https://example.com:8080/path?key=value#section"
ut url encode "hello world"
ut url decode "hello%20world"
printf "hello world" | ut url encode -
hashGenerate cryptographic hash digests using various algorithms.
ut hash sha256 "hello world"
ut hash md5 - < file.txt
echo -n "password" | ut hash sha256 -
bcryptHash and verify passwords using the bcrypt algorithm.
# Hash a password with default cost (12)
ut bcrypt hash "mypassword"
echo -n "mypassword" | ut bcrypt hash -
# Wrong password verification
ut bcrypt verify "wrongpassword" '$2b$12$...'
# Output: invalid
jwtJWT (JSON Web Token) utilities for encoding, decoding, and verifying tokens.
# Encode a JWT with custom claims
ut jwt encode --payload '{"user":"alice"}' --secret "my-secret" --issuer "my-app" --expires-in 3600
# Decode a JWT without verification
ut jwt decode eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...
# Verify a JWT with signature validation
ut jwt verify TOKEN --secret "my-secret" --issuer "my-app"
uuidGenerate UUIDs in various versions.
ut uuid v4
ut uuid v4 --count 5
ut uuid v5 --namespace DNS --name example.com
ut uuid v7
ut uuid v7 --count 5
token (aliases: secret, password)Generate cryptographically secure random tokens.
# Generate a 32-character token
ut token --length 32
# Generate a password (using alias)
ut password --length 16
# Generate without symbols
ut secret --no-symbols --length 64
# Generate without uppercase letters
ut token --no-uppercase --length 20
loremGenerate lorem ipsum placeholder text.
ut lorem --paragraphs 5
ut lorem --min-sentences 2 --max-sentences 6
randomGenerate random numbers within a specified range.
ut random --min 1 --max 100
ut random --min 0 --max 1 --step 0.01 --count 10
caseConvert text between different case formats.
ut case lower "Hello World"
ut case camel "hello_world"
ut case snake "HelloWorld"
ut case kebab "HelloWorld"
echo -n "Hello :)" | ut case lower -
pretty-print (alias: pp)Resolve escaped newlines and tab characters in text.
ut pretty-print "hello\nworld\ttab"
ut pp "hello\nworld\ttab"
diffCompare text contents with visual diff output.
ut diff -a file1.txt -b file2.txt
ut diff # Opens editor for both inputs
calc (alias: cal)Expression calculator with support for multiple number formats and mathematical functions.
ut calc "2 + 2 * 3"
ut cal "sin(pi / 2)"
ut calc "0xFF + 0b1010"
ut calc "sqrt(16) ^ 2"
echo -n "2 + 2" | ut calc -
jsonJSON utilities including a powerful JSON builder.
ut json builder a.b.c=hello a.b.d=world
ut json builder "user.name=John" "user.age=30" "user.tags[]=dev" "user.tags[]=rust"
ut json builder "items[0].id=1" "items[0].name=first" "items[1].id=2"
regexInteractive regex tester with live highlighting.
ut regex
ut regex --test sample.txt
crontabParse crontab expressions and show upcoming firing times.
ut crontab schedule "0 9 * * 1-5"
ut crontab schedule "0 0 * * *" --count 3
ut crontab schedule "0 9 * * 1-5" --after "2024-01-01T00:00:00Z"
echo -n "0 9 * * 1-5" | ut crontab schedule -
datetime (alias: dt)Parse and convert datetimes between timezones.
ut datetime now
ut dt "2025-10-04T15:30:00Z" --target-timezone "Asia/Tokyo"
ut datetime "October 04, 2025 03:30 PM" --source-timezone UTC --parse-format "MonthName Day2, Year4 Hour12:Minute2 AMPM"
echo -n "2025-10-04T15:30:00Z" | ut datetime -
ipIP and CIDR utilities including a tool to describe CIDR blocks.
ut ip cidr describe 192.168.1.100/24
ut ip cidr describe 10.0.0.0/8
ut ip cidr describe 172.16.0.1/16
httpHTTP utilities including status code lookup.
ut http status 404
ut http status # List all status codes
serveStart a local HTTP file server.
ut serve --port 8080
ut serve --directory ./public --auth username:password
qrGenerate QR codes.
ut qr "https://example.com"
ut qr "Hello World" --output qrcode.png
echo -n "Hello World" | ut qr -
colorColor utilities for working with different color formats.
ut color convert "#FF5733"
ut color convert "rgb(255, 87, 51)"
ut color convert "hsl(9, 100%, 60%)"
printf "#FF5733" | ut color convert -
unicodeDisplay Unicode symbol reference table.
ut unicode
# Run the project
cargo run -- <tool> [args]
# Format code
cargo fmt
# Run tests
cargo test
Parts of this project were built using Claude Code, an AI-powered coding assistant, with human oversight and collaboration.
Contributions are welcome! Please feel free to submit a Pull Request.
(top 24 of 43)
3,982 followers · starred Dec 2025
197 followers · starred Oct 2025
156 followers · starred Oct 2025
162 followers · starred Feb 2026
A Rust based utilty toolbox for developers. Inspired from https://it-tools.tech
Rust
1,206
156 commits
updated May 8, 2026
utA fast, lightweight CLI utility toolkit for developers and IT professionals. ut provides a comprehensive set of commonly-used tools in a single binary, eliminating the need to install and remember multiple utilities or search for random websites to perform simple tasks.
brew install ksdme/tap/ut
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/ksdme/ut/releases/latest/download/ut-installer.sh | sh
powershell -ExecutionPolicy Bypass -c "irm https://github.com/ksdme/ut/releases/latest/download/ut-installer.ps1 | iex"
cargo install --git https://github.com/ksdme/ut.git
You can also download prebuilt binaries directly from the releases page.
ut supports shell completions for bash, zsh, fish, nushell, elvish, and PowerShell. To enable tab completion:
# Generate and save completions to your fpath
ut completions zsh > ~/.zsh/completions/_ut
# Or add directly to .zshrc (requires reload for each ut update)
echo 'eval "$(ut completions zsh)"' >> ~/.zshrc
ut completions bash > ~/.local/share/bash-completion/completions/ut
# Or add to .bashrc
echo 'eval "$(ut completions bash)"' >> ~/.bashrc
ut completions fish > ~/.config/fish/completions/ut.fish
ut completions nushell > ~/.config/nushell/completions/ut.nu
# Or use the short alias
ut completions nu > ~/.config/nushell/completions/ut.nu
ut completions powershell | Out-File -FilePath $PROFILE -Append
After setting up completions, restart your shell or source your configuration file.
├── Encoding
│ ├── base64 - Base64 encode/decode
│ │ ├── encode
│ │ └── decode
│ └── url - URL utilities
│ ├── parse
│ ├── encode
│ └── decode
├── Hashing & Security
│ ├── hash - Cryptographic hash digests
│ │ ├── md5
│ │ ├── sha1
│ │ ├── sha224
│ │ ├── sha256
│ │ ├── sha384
│ │ └── sha512
│ ├── bcrypt - Password hashing and verification
│ │ ├── hash
│ │ └── verify
│ └── jwt - JWT (JSON Web Token) utilities
│ ├── encode
│ ├── decode
│ └── verify
├── Data Generation
│ ├── uuid - Generate UUIDs
│ │ ├── v1
│ │ ├── v3
│ │ ├── v4
│ │ ├── v5
│ │ └── v7
│ ├── token (secret, password) - Generate secure random tokens
│ ├── lorem - Generate lorem ipsum text
│ └── random - Generate random numbers
├── Text Processing
│ ├── case - Convert text case formats
│ │ ├── lower
│ │ ├── upper
│ │ ├── camel
│ │ ├── title
│ │ ├── constant
│ │ ├── header
│ │ ├── sentence
│ │ ├── snake
│ │ └── kebab
│ ├── pretty-print (pp) - Unescape newlines and tabs
│ └── diff - Compare text with visual output
├── Development Tools
│ ├── calc (cal) - Expression calculator
│ ├── json - JSON builder and utilities
│ │ └── builder
│ ├── regex - Interactive regex tester
│ ├── crontab - Cron utilities
│ │ └── schedule
│ └── datetime (dt) - Parse and convert datetimes
├── Web & Network
│ ├── ip - IP & CIDR utilities
│ │ └── cidr
│ │ └── describe
│ ├── http - HTTP utilities
│ │ └── status
│ ├── serve - Local HTTP file server
│ └── qr - Generate QR codes
├── Color & Design
│ └── color - Color utilities
│ └── convert
└── Reference
└── unicode - Unicode symbol reference
base64Encode and decode data using Base64 encoding.
ut base64 encode "hello world"
ut base64 decode "aGVsbG8gd29ybGQ="
ut base64 encode --urlsafe "hello world"
echo -n "hello world" | ut base64 encode -
urlURL encode, decode, and parse.
ut url parse "https://example.com:8080/path?key=value#section"
ut url encode "hello world"
ut url decode "hello%20world"
printf "hello world" | ut url encode -
hashGenerate cryptographic hash digests using various algorithms.
ut hash sha256 "hello world"
ut hash md5 - < file.txt
echo -n "password" | ut hash sha256 -
bcryptHash and verify passwords using the bcrypt algorithm.
# Hash a password with default cost (12)
ut bcrypt hash "mypassword"
echo -n "mypassword" | ut bcrypt hash -
# Wrong password verification
ut bcrypt verify "wrongpassword" '$2b$12$...'
# Output: invalid
jwtJWT (JSON Web Token) utilities for encoding, decoding, and verifying tokens.
# Encode a JWT with custom claims
ut jwt encode --payload '{"user":"alice"}' --secret "my-secret" --issuer "my-app" --expires-in 3600
# Decode a JWT without verification
ut jwt decode eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...
# Verify a JWT with signature validation
ut jwt verify TOKEN --secret "my-secret" --issuer "my-app"
uuidGenerate UUIDs in various versions.
ut uuid v4
ut uuid v4 --count 5
ut uuid v5 --namespace DNS --name example.com
ut uuid v7
ut uuid v7 --count 5
token (aliases: secret, password)Generate cryptographically secure random tokens.
# Generate a 32-character token
ut token --length 32
# Generate a password (using alias)
ut password --length 16
# Generate without symbols
ut secret --no-symbols --length 64
# Generate without uppercase letters
ut token --no-uppercase --length 20
loremGenerate lorem ipsum placeholder text.
ut lorem --paragraphs 5
ut lorem --min-sentences 2 --max-sentences 6
randomGenerate random numbers within a specified range.
ut random --min 1 --max 100
ut random --min 0 --max 1 --step 0.01 --count 10
caseConvert text between different case formats.
ut case lower "Hello World"
ut case camel "hello_world"
ut case snake "HelloWorld"
ut case kebab "HelloWorld"
echo -n "Hello :)" | ut case lower -
pretty-print (alias: pp)Resolve escaped newlines and tab characters in text.
ut pretty-print "hello\nworld\ttab"
ut pp "hello\nworld\ttab"
diffCompare text contents with visual diff output.
ut diff -a file1.txt -b file2.txt
ut diff # Opens editor for both inputs
calc (alias: cal)Expression calculator with support for multiple number formats and mathematical functions.
ut calc "2 + 2 * 3"
ut cal "sin(pi / 2)"
ut calc "0xFF + 0b1010"
ut calc "sqrt(16) ^ 2"
echo -n "2 + 2" | ut calc -
jsonJSON utilities including a powerful JSON builder.
ut json builder a.b.c=hello a.b.d=world
ut json builder "user.name=John" "user.age=30" "user.tags[]=dev" "user.tags[]=rust"
ut json builder "items[0].id=1" "items[0].name=first" "items[1].id=2"
regexInteractive regex tester with live highlighting.
ut regex
ut regex --test sample.txt
crontabParse crontab expressions and show upcoming firing times.
ut crontab schedule "0 9 * * 1-5"
ut crontab schedule "0 0 * * *" --count 3
ut crontab schedule "0 9 * * 1-5" --after "2024-01-01T00:00:00Z"
echo -n "0 9 * * 1-5" | ut crontab schedule -
datetime (alias: dt)Parse and convert datetimes between timezones.
ut datetime now
ut dt "2025-10-04T15:30:00Z" --target-timezone "Asia/Tokyo"
ut datetime "October 04, 2025 03:30 PM" --source-timezone UTC --parse-format "MonthName Day2, Year4 Hour12:Minute2 AMPM"
echo -n "2025-10-04T15:30:00Z" | ut datetime -
ipIP and CIDR utilities including a tool to describe CIDR blocks.
ut ip cidr describe 192.168.1.100/24
ut ip cidr describe 10.0.0.0/8
ut ip cidr describe 172.16.0.1/16
httpHTTP utilities including status code lookup.
ut http status 404
ut http status # List all status codes
serveStart a local HTTP file server.
ut serve --port 8080
ut serve --directory ./public --auth username:password
qrGenerate QR codes.
ut qr "https://example.com"
ut qr "Hello World" --output qrcode.png
echo -n "Hello World" | ut qr -
colorColor utilities for working with different color formats.
ut color convert "#FF5733"
ut color convert "rgb(255, 87, 51)"
ut color convert "hsl(9, 100%, 60%)"
printf "#FF5733" | ut color convert -
unicodeDisplay Unicode symbol reference table.
ut unicode
# Run the project
cargo run -- <tool> [args]
# Format code
cargo fmt
# Run tests
cargo test
Parts of this project were built using Claude Code, an AI-powered coding assistant, with human oversight and collaboration.
Contributions are welcome! Please feel free to submit a Pull Request.
(top 24 of 43)
3,982 followers · starred Dec 2025
197 followers · starred Oct 2025
156 followers · starred Oct 2025
162 followers · starred Feb 2026