Personal identity landing page
Personal identity landing page with 9 themes, short link redirects, and mini apps on Cloudflare Pages
stack: vite, typescript, cloudflare-pages, cloudflare-functions, biome
What
Personal identity landing page featuring 9 switchable themes (Terminal, Brutalist, Gradient, Glass, Neobrutalism, Retro, Minimal, Cyberpunk, Paper), short link redirects, and a mini apps platform.
Multi-page Vite app hosted on Cloudflare Pages. Theme selection via URL param, saved preference, or random. Short links handled by Cloudflare Pages Functions middleware with 301 redirects.
Why
Needed a lightweight, fast personal landing page that doubles as a link-in-bio and a playground for mini tools — without the overhead of a full framework or CMS.
Cloudflare Pages provides free hosting with edge Functions for redirect logic, and Vite keeps the build simple with zero runtime dependencies.
Notes
- 9 themes rendered from a single config-driven
config.json, no framework - Short links via both path (
khương.vn/github) and subdomain (github.khương.vn) - Mini apps platform at
/apps/— each app is a separate Vite entry point - Cloudflare Functions middleware intercepts requests before static files for redirects
- Auto-deploy via GitHub Actions → Cloudflare Pages
- IDN domain (khương.vn) with punycode DNS setup