Why I built it
I kept bouncing between a dozen sketchy single-purpose sites for the same handful of tasks — formatting JSON, encoding a string, generating a UUID, converting units. Each one was an ad-riddled detour. Wrench is the version I wanted: a clean, fast, single home for the utilities I actually use, with no tracking and no noise.
Approach
It's a Next.js app where each tool is a self-contained module sharing one layout and design language. Everything runs client-side, so nothing you paste in ever leaves the browser — which matters when the input is a token or a chunk of config. Adding a new tool is intentionally cheap: a new module slots straight into the grid.
What's interesting
- Everything is local-first — inputs are processed in the browser, never sent to a server.
- Mobile-first to the core — each tool reflows to a one-handed, stacked layout, with swipe-to-act rails standing in for the desktop buttons.
- A consistent shell across tools, so each one feels familiar the moment you open it.
- Built to grow: the architecture makes dropping in a new utility a few-minute job.
Where it stands
Live and quietly expanding whenever I hit a task that deserves its own tool. It's the project I dogfood the most.
