Thaddeus Kuah's personal website and short URL service. The site is built with TanStack Start, React, Tailwind CSS, and Base UI, then deployed to Cloudflare Workers with D1 storage.
Install dependencies and create a local environment file:
pnpm install
cp .env.example .envCreate the local D1 database schema, then start the development server:
pnpm db:migrate:local
pnpm devThe site runs at http://localhost:3000.
The Short URL command-line tool manages local or remote D1 records:
pnpm urls --help
pnpm urls:local listProtected URLs require a SHORT_URL_PEPPER containing at least 32 bytes. Remote writes use the Cloudflare account and D1 database configured through Wrangler.
Run the full formatter, TypeScript, ESLint, and production-build check before deploying:
pnpm validateIndividual commands are also available as pnpm check, pnpm typecheck, pnpm lint, and pnpm build.
After configuring Wrangler and the required Worker secrets:
pnpm deploy