All products

Everything we make.

Every product we make, grouped by what it is. Each card opens that product's own page, which is where the detail lives.

Apps

EasyHomebrew

macOS app

Supply-chain hygiene for your Mac. Every installed Homebrew package is checked against a live CVE database, a menu-bar agent watches for new advisories, and a complete native package manager sits underneath.

Contain

macOS app

One window for the windows you already have open. Each one gets a tab, and letting it go puts it back at the exact position, size and screen it came from.

WizLook

macOS app

Opens the placeholder files Google Drive leaves on your Mac as the document itself, read-only — and Markdown, drawings, notebooks and data files the same way, each with a real preview in the Finder.

Whokoban

iPhone game

Sokoban with one rule changed: filling every goal does not finish the level, it unlocks the exit — and Whoko still has to walk out through the warehouse he has just rearranged.

Promptivo

Live experiment

Measures the quality of an AI prompt without asking a model to judge it, so the same prompt always gets the same score. Free, with its method and measurements published beside it.

Practical UV

VS Code extension

Brings uv into VS Code. Outdated packages and known vulnerabilities are flagged in the file you already have open, and a pip project converts to uv in one click.

Kyori

JavaScript library

String distance and similarity for JavaScript — the classic metrics, plus a ranking score built for autocomplete that folds case and accents and survives typos.

WizJS

JavaScript library

Everyday JavaScript utilities without becoming another lodash — Python's itertools, functools and collections, ported to JS with zero runtime dependencies.

json2jsonl

Command-line tool

Turns one or many JSON files into a single JSON Lines output, written straight to the terminal when no file is named, so it pipes into whatever comes next.

trimmer

Command-line tool

A single-purpose filter that strips the leading and trailing whitespace from whatever it reads — the whole input by default, or every line on its own.