A fast, keyboard-first developer toolbox for the terminal—available as both an interactive TUI and a script-friendly CLI.
TIT.RUN brings everyday developer utilities into one lightweight, offline application. It combines a responsive Ratatui interface with headless commands that work in shell scripts, CI jobs, and agent workflows.
- Keyboard-first navigation with fuzzy tool search
- Responsive wide and compact terminal layouts
- Live conversion and validation as you type
- Headless CLI commands for automation
- Local processing—input is not sent to a remote service
- Cross-tool clipboard support with visible error reporting
- Tested conversion logic and strict linting in CI
| Category | Utilities |
|---|---|
| Converters | Date-Time, Base64, URL Encoding, HTML Entities, Number Base, Color |
| Crypto | MD5, SHA-256, and SHA-512 hashes |
| Text | Text Case Converter, Text Statistics, Lorem Ipsum |
| Development | JSON Formatter, JSON ↔ YAML, JWT Parser, Regex Tester, Cron Parser |
| Network | IPv4 Subnet Calculator, URL Parser, MAC Address Generator |
| Generators | UUID v4, Password Generator |
- Recovered the responsive layout, fuzzy search, contextual help, clipboard reporting, tests, CI, MIT license, and project documentation after the remote history was replaced.
- Recovered Color Converter, Cron Parser, Regex Tester, and the signed 128-bit Number Base Converter.
- Merged vdmo's latest HTML entity compilation fixes.
- Added vdmo's IPv4 Subnet Calculator, MAC Address Generator, and JSON ↔ YAML Converter to both the TUI and headless CLI.
Warning
The JWT Parser decodes token contents but does not verify signatures. Never use decoded claims alone as proof of authenticity.
The interface supports both a three-pane desktop view and a compact stacked layout. Project screenshots can be added under docs/screenshots/ and referenced here without changing the application build.
Prebuilt packages are available from the GitHub Releases page:
| Platform | Package |
|---|---|
| Linux x86_64 | tit-v0.1.0-linux-x86_64.tar.gz |
| Linux ARM64 | tit-v0.1.0-linux-aarch64.tar.gz |
| macOS Intel | tit-v0.1.0-macos-x86_64.tar.gz |
| macOS Apple Silicon | tit-v0.1.0-macos-aarch64.tar.gz |
| Windows x86_64 | tit-v0.1.0-windows-x86_64.zip |
| Windows ARM64 | tit-v0.1.0-windows-aarch64.zip |
Every release includes SHA256SUMS.txt. Windows executables embed the TIT.RUN icon; Linux and macOS packages include the SVG/PNG icon assets, and macOS packages also include tit.icns.
Install the current stable Rust toolchain, then run:
git clone https://github.com/Giladx/tit.git
cd tit
cargo build --release
./target/release/titgit clone https://github.com/Giladx/tit.git
cd tit
cargo install --path .
titClipboard integration requires a desktop clipboard provider. Copy operations may be unavailable on headless Linux hosts; TIT.RUN reports clipboard errors in the status bar.
Run TIT.RUN without a subcommand:
cargo run --release| Key | Action |
|---|---|
↑ / ↓ or j / k |
Select a tool |
← / → or h / l |
Change category |
Enter |
Open the selected tool |
/ |
Fuzzy-search tools |
Esc |
Return to the tool list |
Ctrl+C |
Copy the current tool output |
q |
Quit while the tool list is focused |
Tool-specific shortcuts appear in the contextual help panel. Terminals narrower than 100 columns automatically switch to a compact stacked layout.
Use subcommands when output needs to be piped or consumed by another program:
tit uuid --count 3
tit base64 "hello world"
tit base64 --decode "aGVsbG8gd29ybGQ="
tit urlencode "hello world"
tit html-entities '<main class="app">'
tit hash "important input"
tit jwt "header.payload.signature"
tit stats "A short sentence."
tit ipv4 "192.168.1.10/24"
tit mac --count 3
tit yaml2json 'name: tit'
tit json2yaml '{"name":"tit"}'
tit number-base --from hex FFDiscover all commands with tit --help or tit <command> --help.
src/
├── main.rs # CLI/TUI entry point and terminal lifecycle
├── cli.rs # Headless subcommands
├── app.rs # Navigation, search, layout, and application state
├── theme.rs # Shared terminal color system
├── tools/ # Individual tools and testable conversion logic
└── ui/ # Shared UI module boundary
Tools implement the shared Tool trait and are registered in src/tools/mod.rs. Parsing and conversion logic is kept separate from rendering so it can be tested without starting a terminal.
cargo fmt --all -- --check
cargo clippy --all-targets --all-features -- -D warnings
cargo test --all-featuresGitHub Actions runs the same formatting, lint, and test gates for pushes and pull requests.
- Cron parsing validates and explains standard five-field expressions but does not calculate future run times.
- Number-base conversion is limited to signed 128-bit integers.
- Color conversion currently accepts six-digit HEX input.
- Regex behavior follows Rust's
regexcrate and does not support look-around or backreferences. - Clipboard availability depends on the host display environment.
TIT.RUN preserves the original commits and authorship from vdmo/tit, followed by the expanded responsive interface, reliability work, additional tools, tests, CI, and documentation maintained in this repository.
TIT.RUN is a personal open-source project released under the MIT License. You may use, modify, and distribute it under the license terms.
