This is the repository for my website.
React + Vite, hand-written CSS, no analytics. Behind everything sits one canvas: a reactive ASCII field. Glyphs heat up and swirl around your cursor, scatter when you click, and keep re-scrambling a few at a time when you're not there.
npm install
npm run dev # http://localhost:5173
npm run build # production build -> dist/
npm run preview # serve dist/ locally-
Push to GitHub. The remote is already set up:
git push origin main
-
Cloudflare dashboard -> Workers & Pages -> Create -> Pages -> Connect to Git -> pick this repo.
- Private repo is fine: when prompted, give the Cloudflare Pages GitHub app access to this repository. That permission grant is the part that used to make Cloudflare angry.
-
Build settings (auto-filled if you choose the Vite framework preset):
- build command:
npm run build - output directory:
dist
- build command:
-
Deploy. You get
<project>.pages.dev. Every push tomainredeploys it, and every pull request gets its own preview URL. -
Custom domain (if you want one): Settings -> Domains on the Pages project.
Direct upload from your machine works too:
npm run build
npx wrangler pages deploy dist