Built after hours.

Small things I'm building when I'm not at work.

localhost:3000Abraham PrinceAboutProjectsStackHireAbraham PrinceSoftware developerWGHT594SIZE76TRCK-3.5%

This website

Built with TanStack

TanStack Start, Router, Query and Store on top of React 19 and Vite. Server functions power the visitor counter, everything else is static and fast. The request-trace hero, the inspect mode and the accent picker are all hand-built with CSS.

  • TanStack Start
  • React 19
  • TypeScript
github.com
~/work — zsh$ devkit init payments-service ✓ scaffolded service from template ✓ wrote .env.local (3 secrets rotated) ✓ installed 214 packages in 3.1s$ devkit branches --stale feat/old-checkout 41 days fix/typo-readme 63 days ? delete 2 stale branches (Y/n)$ █

devkitSample

A CLI for everyday dev chores

One command to bootstrap services, rotate local secrets and tidy stale branches. Written in TypeScript, tested with Vitest and shipped as a single binary.

  • Node.js
  • TypeScript
  • Vitest
npmjs.com
example.ts1import { retry } from 'retryable'23const user = await retry(() =>4 api.getUser(id), {5 attempts: 5,6 backoff: 'exponential',7 jitter: true,8 signal: controller.signal,9})1011// typed: user is User, not unknown

retryableSample

Typed retries for TypeScript

A tiny, dependency-free helper for retries with backoff, jitter and abort signals. Fully typed, tree-shakeable and under one kilobyte.

  • TypeScript
  • Zero dependencies
  • < 1 kB
github.com
Your project idea?Have something worth building? Tell me about it.Let's talk