This is the Node.js official website (nodejs.org), a pnpm monorepo with Turborepo. Single product in apps/site (Next.js), plus shared packages in packages/.
- Node.js v24 (see
.nvmrc) - pnpm 10.33.0 (see
packageManagerin rootpackage.json)
All standard commands are documented in docs/getting-started.md. Quick reference:
| Task | Command |
|---|---|
| Install deps | pnpm install --frozen-lockfile |
| Dev server | pnpm dev (runs at http://localhost:3000) |
| Lint | pnpm lint |
| Format + fix | pnpm format |
| Unit tests | pnpm test |
| Build | pnpm build |
- The root
/route returns a 307 redirect to/en. Always test againsthttp://localhost:3000/enfor a 200 response. - The dev server compiles pages on-demand (Turbopack). The first page load after
pnpm devtakes ~15 seconds; subsequent loads are fast. - No databases, Docker, or external services are required for local development. Search uses Orama Cloud with hardcoded public dev keys.
- The pre-commit hook runs
node --run lint:stagedandnode --run lint:types. Ensure these pass before committing. pnpm testmaps toturbo test:unitwhich runs the Node.js built-in test runner (not Jest/Vitest). Tests usenode:testandnode:assert.- When using nvm, after switching to Node.js v24 you need to ensure pnpm is available (via
corepack enable && corepack prepare [email protected] --activate).