Reactive React template engine for server-rendered mini-apps with Vite-powered development, client hydration, and full control over your Node server.

Hydratable page pages/home.tsx
tsx
import { useState } from 'react';

export function Head() {
  return <title>Reactus</title>;
}

export default function HomePage({ title }: { title: string }) {
  const [count, setCount] = useState(0);

  return (
    <main>
      <h1>{title}</h1>
      <p>Rendered by Reactus.</p>
      <button onClick={() => setCount(count + 1)}>
        Count: {count}
      </button>
    </main>
  );
}

Why teams use it

Render React without surrendering your server.

  • server-rendered React without standing up a separate frontend app
  • client hydration for interactive pages
  • Vite plugins and React fast refresh in development
  • low level engine access and total control of the build step

What it does not add

Keep the framework surface area under control.

  • a client-side router
  • a data layer or state architecture
  • an opinionated full-stack framework
  • React server components

Framework fit

Drop Reactus into the server you already run.

ExpressJSFastifyHapiKoaNestJSRestify

Documentation map

Pick the next page based on the task in front of you.

Start

Getting started

build one page, render it on the server, and verify hydration works.

Concept

Mental model

understand how documents, manifests, builds, and runtime rendering fit together.

Reference

API reference

look up config types, wrapper APIs, and lower-level classes.