Independent software · shipping since 2026

I build small, cold, fast things.

Kits, tools, books and services for developers — some free and on GitHub, some paid. All built the same way: no bloat, no dark patterns, source you can read.

Everything, up front

7 products · 6 live · pick one
KitLive

Frosel UI

40 React + Tailwind components in a frost-glass system. Copy the file, ship today.

$59$39Get it →
BoilerplateLive

Frosel Starter

17 pages of production SaaS — auth, teams, billing, dashboard, API keys — on three runtime dependencies.

$129once · every SaaS you buildGet it →
Open sourceLive

diskbroom

Finds the gigabytes of regenerable build junk — node_modules, .venv, target — rotting across your projects. Any OS, zero deps.

Free foreverGitHub →
PDFLive

The Dark Mode Handbook

Why your dark theme looks muddy, and the 40 fixes — every one with real code and a before/after.

$24$19151 pages · 5 parts · 40 fixesGet it →
SaaSSoon

Coldwatch

Uptime monitoring that texts you before your users do. 30-second checks.

$9/moNotify me →
TemplateLive

Subzero Landing

A static, config-driven landing page template — Next.js 16, exported to plain HTML you can host anywhere.

$29live demo ↗Get it →
TemplateLive

SellKit

Your product is good. Your page is why it isn't selling. A conversion-ready sales page you fill in from one config file — hero, pricing, FAQ, and a buy button you point at your checkout.

$49live demo ↗Get it →
still shipping ❄
How it's built

Don't trust screenshots. Poke it.

Everything I sell is built from the same parts as this site. The panel below is live — press the button, flip the switch, drag the slider. Then read the source next to it: that's the entire component. No wrapper library, no magic.

playground·live
button — click it
switch — on
62
slider — drag it
gauge — synced to slider
gauge.tsx·the whole thingvalue = 62
// no chart library. it's a conic-gradient.
export function Gauge({ value }: { value: number }) {
return (
<div
role="meter"
aria-valuenow={62}
className="gauge"
style={{ "--p": "62%" }}
data-value={62}
/>
)
}
 
/* .gauge { background: conic-gradient(
var(--accent) 0 var(--p),
var(--track) var(--p) 100% ) } */
Open source

Free is the front door.

MIT-licensed, maintained, and small enough to read in one sitting. Take them without giving me anything.

github/diskbroomFind and reclaim regenerable build junk — node_modules, .venv, target — across all your projects, safely, on any OSTypeScriptv0.1.0 · MIT
Changelog

Proof of life.

Shipped recently. The log is public because momentum should be verifiable.

soon

Coldwatchthe SaaS — uptime monitoring that pings you before your users do. In progress, built on Frosel Starter.

v1.0.0

The Dark Mode Handbookfinished — 151 pages, 40 fixes across 5 parts, every one with code and a before/after. Free 11-page sample of the first.

v0.1.0

Frosel UI40 components ready — 8 free, 32 in the paid set, each with its own docs page and zero runtime dependencies.

v0.1.0

SellKita sales page you fill in from one config file — hero, pricing, FAQ and checkout wired end to end.

v1.0.0

Subzero Landingpackaged and shipped — Lighthouse 99 on desktop, all four theme presets clearing WCAG AA contrast.

part 1

The Dark Mode Handbookfirst part written — five fixes down, each with the wrong code, the reason, and the fix.

v1.0.0

Frosel Starter17 pages of production SaaS — 4 public, 4 auth, 9 app — auth, teams, billing, dashboard, on three runtime dependencies.

v0.1.0

diskbroomfirst release — finds regenerable build junk across JS, Python, Rust, Java and .NET projects. Report-only by design.

New things, roughly monthly.

What shipped, what broke, what I learned. No launch hype, unsubscribe in one click.

no spam, ever — just the log