This is a Next.js project bootstrapped with create-next-app.
First, run the development server:
npm run dev
# or
yarn dev
# or
pnpm dev
# or
bun devOpen http://localhost:3000 with your browser to see the result.
You can start editing the page by modifying app/page.tsx. The page auto-updates as you edit the file.
This project uses next/font to automatically optimize and load Geist, a new font family for Vercel.
To learn more about Next.js, take a look at the following resources:
- Next.js Documentation - learn about Next.js features and API.
- Learn Next.js - an interactive Next.js tutorial.
You can check out the Next.js GitHub repository - your feedback and contributions are welcome!
This site builds as a static export (output: "export" in next.config.ts) and deploys to Cloudflare Pages.
.github/workflows/deploy.yml builds the site and runs wrangler pages deploy on every push to main. It needs two repository secrets:
CLOUDFLARE_API_TOKEN— a token with the "Cloudflare Pages: Edit" permissionCLOUDFLARE_ACCOUNT_ID— found on the Cloudflare dashboard's right sidebar
One-time setup before the first deploy:
- In the Cloudflare dashboard, create a Pages project named
personal-site(Workers & Pages → Create → Pages → connect to Git, or create it empty and let the workflow's firstwrangler pages deploypopulate it). - Add the two secrets above under the GitHub repo's Settings → Secrets and variables → Actions.
- In the Pages project's Custom domains settings, attach your domain (already on Cloudflare, so DNS is automatic).
To build and preview locally:
bun run build
bunx wrangler pages dev out