A batteries-included React stack that gives coding agents and developers a stable, opinionated surface — so you ship features, not config.
bunx create-rejoice-app@latest your_app_name
Requires Bun installed. That's it.
When an AI agent scaffolds a new app, it shouldn't have to choose between Tailwind or CSS Modules, Redux or Zustand, Webpack or Vite. Every choice is a coin flip that compounds into drift.
rejoice eliminates that entropy. One package, one import, one set of conventions. The agent always knows what's available, where it lives, and how to use it — because the answer never changes.
That's determinism: a stable surface that makes AI-generated code predictable, reviewable, and mergeable. No more "which UI library did the agent pick this time?"
// One import. Everything you need.
import {
useState,
Button,
Card,
styled,
useTheme,
create,
} from "rejoice-js";
const Counter = () => {
const [count, setCount] = useState(0);
const { isDarkMode } = useTheme();
return (
<Card title="Counter">
<Button onClick={() => setCount(c => c + 1)}>
{count}
</Button>
</Card>
);
};