Single Problem Per Tool
Each tool solves one specific problem and solves it well. No framework bloat, no feature creep.
Focused, zero-dependency tools and utilities for modern software development
Identify unreliable tests by running them multiple times and tracking failure rates.
Cross-platform file-based semaphore for process coordination with stale lock detection.
Concurrent-safe progress tracking with file-based atomic writes.
Convert Windows/Unix paths with zero dependencies.
Semantic diff for JSON, text, and binary files with zero dependencies.
Structured error format with context preservation and serialization.
Merge ENV, config files, and CLI arguments with clear precedence rules.
Snapshot testing with integrated semantic diffs for regression detection.
Cross-platform file-based semaphore for Node.js process synchronization.
Concurrent port allocation for any application - avoid port conflicts in tests, servers, microservices, and development.
Runtime type validation with TypeScript inference - validate data from any source with graceful error handling.
Tool Composition: Snapshot Comparison is the first tool to use library-level composition (PRINCIPLES.md Exception 2). It imports output-diffing-utility as a path dependency, demonstrating how Tuulbelt tools can build on each other while maintaining zero external dependencies.
Phase 1: Quick Tools — 5 of 5 complete (100%) ✅
Phase 2: Started — 6 of 28
Overall Progress: 11 of 33 tools (33%)
# Clone the repository
git clone https://github.com/tuulbelt/tuulbelt.git
cd tuulbelt
# Try Test Flakiness Detector
cd test-flakiness-detector
npm install
flaky --test "npm test" --runs 10# Try File-Based Semaphore
cd file-based-semaphore
cargo build --release
# Acquire a lock
./target/release/file-semaphore try /tmp/my.lock
# Check status
./target/release/file-semaphore status /tmp/my.lock
# Release
./target/release/file-semaphore release /tmp/my.lockSee each tool's documentation for full usage guides and API references.
Tuulbelt tools follow strict principles: