Create a new application
Install Node.js 20.19 or newer, then run:
npx @nessframework/cli@latest new my-app
cd my-app
npm run dev
The installed command is also available globally:
npm install --global @nessframework/cli@latest
ness new my-app
That gives you the TypeScript starter: strict mode on, and route types generated into .react-router/types.
ness new also has the shorter ness n alias. See the ness new reference for every option.
JavaScriptβ
ness new my-app --template javascript
The same application without the types. js and default are accepted as well β default is what --template fell back to before TypeScript became the default, and it still scaffolds this starter.
All official starters include a NestJS backend under app/server. Controllers are mounted at /api while React Router handles pages and SSR. Choose among the TypeScript, JavaScript, minimal, API-first, and dashboard templates.
Local templateβ
ness new my-app --template ./path/to/template
The directory can contain the application files directly or expose them from a template/ subdirectory. See Custom and local templates for package metadata, dependency merging, and copy-safety rules.
React Server Componentsβ
RSC is the default rendering mode β ness new my-app already gets it. It supports Server Components, 'use client', and 'use server' functions, and every production feature classic mode has: NestJS controllers, the ness-manifest.json build manifest, standalone bundling, and router.prerender / SSG. See React Server Components for the authoring model and its one current caveat (hydrating a route whose page component is itself async).
It still sits on two upstream APIs that are themselves pre-stable β @vitejs/plugin-rsc (0.x) and React Router's unstable_reactRouterRSC β and can change between minor versions as a result. Pass --no-rsc to scaffold the classic SSR mode instead, which avoids that dependency entirely:
ness new my-app --no-rsc
Next stepsβ
npm run dev # development server and HMR
npm run check # route type generation and TypeScript check
npm run build # production client/server build
npm run start:prod # Ness production server
Continue with the CLI command overview or generate the first route with ness g page products.