Problem
I kept needing small utilities — a color converter, a text counter, a timestamp formatter — and every existing one was either buried in ads, required an account, or loaded a framework heavier than the tool itself. I wanted tools that load instantly, work offline, and do exactly one thing.
Approach
Each tool is a single self-contained HTML file: markup, styles, and logic in one document. No bundler, no framework, no client-side build step. If the tool’s JavaScript breaks, the rest of the collection is unaffected.
The build system is equally simple: a Python script managed by uv generates the index and assembles the site. Playwright runs the tests — each tool gets a basic smoke test that opens the page and verifies it renders without errors.
Stack
HTML, CSS, vanilla JavaScript, Python, uv, Playwright.
Outcome
The site hosts over 180 tools. The collection keeps growing because adding a new tool is trivially cheap: write one HTML file, run the build, and it appears in the index. No dependency updates, no framework migrations, no breaking changes from upstream.
What it taught me: keeping a tool boring is usually the fastest way to end up with something I actually keep using. The absence of a framework is a feature, not a limitation — it means the tool I wrote three years ago still works exactly as it did the day I built it.