Introduction

What is NukeJS?

Most React frameworks ship a full JavaScript bundle to the browser for every page — even completely static ones. NukeJS flips this model. Every page is rendered to HTML on the server. JavaScript only reaches the browser for components you explicitly mark "use client". Everything else ships zero JS.

The result is faster first loads, excellent SEO out of the box, and a full server-side runtime you can use to talk directly to databases, read secrets, and run async code — no separate backend needed.

The core idea

A server component is just a React component that runs on the server. It can be async, talk to a database, and read environment variables. Its output is HTML — no JS bundle. A client component adds "use client" at the top and gets bundled for the browser.

Mix them freely — server components can render client components as children and pass them data as props.

Quick start

Create a project and start the dev server:

terminalbash
npm create nuke@latest
cd my-app
npm run dev

Your app is running at http://localhost:3000. Open app/pages/index.tsx and start editing — changes appear instantly.