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 dev
Open http://localhost:3000 in your browser to view the app locally.
You can start editing app/page.tsx to change the main page. The site will
auto-update in the browser as you edit.
This project uses next/font.
It automatically optimizes and loads the Geist font, which is provided by
Vercel.
To learn more about Next.js, check out these resources:
You can check out the Next.js GitHub repository. Feedback and contributions are welcome!
The easiest way to deploy your Next.js app is to use the Vercel Platform.
Check out the Next.js deployment documentation for more details.
You can host this project as a static site on GitHub Pages.
We provide a GitHub Actions workflow that builds and publishes the static
out/ directory for you on pushes to main.
Quick steps:
USERNAME.github.io/REPO),
the GH Actions workflow will auto-set NEXT_PUBLIC_BASE_PATH and
NEXT_PUBLIC_ASSET_PREFIX to /<repo-name> during build. This keeps assets
referencing the correct path in exported files.out/ folder: npm ci
npm run build:export
npx serve -s out
# open localhost:5000
main.
The Deploy to GitHub Pages workflow will then build and publish the
out/ directory to the gh-pages branch.Note: there are two common ways to host a Next.js static export on GitHub Pages:
GitHub Pages/private build (recommended): Use the default “Pages” build and
deployment that GitHub provides (this runs a Pages workflow from main). If
you prefer this, set Pages to use main in the repository Settings -> Pages.
GitHub Pages branch (peaceiris): Some CI workflows build the static out/
artifacts and push them to a dedicated gh-pages branch (the peaceiris
action, as used here). If you use this approach, configure Settings -> Pages
to publish from the gh-pages branch.
Which to pick: If you want the workflow to create and push static artifacts to
gh-pages (and the UI to show the published assets there), select the gh-pages
branch as the Pages source in Settings; otherwise prefer main if you want the
Pages build to run on GitHub’s Pages workflow.
Note: GitHub Pages works best for fully static sites.
If you later add server-side features (API routes, server-side rendering, or
middleware), consider using Vercel instead.
If you’re getting started, here’s how to run and work with this project in plain language:
npm ci
npm run dev
# This runs under Webpack by default for stable, reliable debugging and
# plugin support.
If you want to set up, validate, test, type-check, and run the app with a single command (great for new machines), use:
npm run start:dev
This command will:
npm ci to install dependenciesnpm run validate:config)npm run dev) when checks passNote: CI and the start:dev sequence use lint:ci which sets ESLint to fail on
warnings. This means your single-command run will fail if lint warnings are
present — this is intentional to keep the repository warnings-free.
To build and start a production server in a single command:
npm run start:prod
If you want to run the same checks locally as CI (install deps, validate config, typecheck, lint, test, build), use:
npm run ci
npm run dev:turbopack
# Turbopack is faster, but if you have custom webpack loaders or
# plugins you may see a warning; in that case, run `npm run dev`.
npm run lint # finds style and lint errors
npm run lint:fix # auto-fixes some lint problems
npm run format # formats files (prettier)
npm run build
npm start
Small tips:
turbo or experimental keys,
run npm run validate:config to get a quick suggestion about what to fix.npm run dev, npm run dev:web, npm run dev:turbopack.npm run dev is the safe default if you’re new to the codebase.dev:turbopack to try Next’s Turbopack path later.node_modules or wasm, try deleting
node_modules and re-running npm ci.turbo.createProject errors:
npm run dev:web for a stable webpack dev session;next.config.* and remove experimental.turbo.turbopack: {} block to suppress the warning.node_modules and run npm ci again.To see what needs updating in your local environment, run:
npm outdated
If you want to update everything automatically you can run:
npm update
If you’re updating big packages (like Next.js or React), check the release notes and migration docs before you upgrade.
21 recommended improvements
Below is a friendly, no-jargon breakdown of the 21 improvements. They are grouped into four categories: A (do now), B (do soon), C (do when possible), D (nice to have).
A — Immediate (these will protect the repo and help contributors quickly):
tsc --noEmit in CI to catch typed errors before a
PR is merged.B — High priority (makes the project more secure and friendly):
C — Medium (good to have but not critical right now):
images.domains and other
production settings to avoid deployment issues.D — Lower priority (extra nice to have):
CODEOWNERS file for reviewer assignment and
maintain the CODE_OF_CONDUCT.If you’d like any of these completed for you, tell me which ones (pick a category or specific numbers). I can start by implementing CI and test improvements, or by setting up the documentation and templates.