Docs GitHub

Juice

Zero-bloat React 19 RSC framework. Streaming SSR, server actions, file-system routing. Two dependencies. Ships nothing you don't use.

2
Dependencies
~40ms
Cold Start
532
Tests
0
Node.js APIs
npx @cmj/juice create my-app

Get Started

File-System Routing

Drop a file in app/routes/ and it's a route. Layouts, middleware, loading states, error boundaries—all by convention.

Streaming SSR

Three modes: buffered, shell, or full streaming. Pick the right trade-off between TTFB and status-code correctness per route.

Server Actions

Mark a function 'use server' and call it from the client. Forms work without JavaScript. Full React 19 integration.

Async Server Components

Fetch data with async/await directly in components. Request-scoped cache() deduplicates automatically.

Middleware & Context

Onion-model middleware with typed context keys. Auth, CORS, logging, database pools—compose them cleanly.

Secure by Default

CSRF protection on by default. Prototype pollution prevention. Client boundary enforcement. CSP nonce support.

Deploy Anywhere

WinterCG-only runtime. Works on Cloudflare Workers, Bun, Deno, and Node.js without platform-specific code.

CSS That Works

Global CSS, CSS Modules, Sass, Less, Stylus. Link injection in dev, bundled manifest in production.