Choose the React or SolidJS renderer, then load FroggDesign theme CSS before renderer CSS.
EnterUI ships separate renderer packages. Use this page for package installation and global CSS setup. Renderer-specific coverage and API notes live in the dedicated framework guides.
Use @froggdesign/enter-ui-react for React 18, React 19, and Next.js
App Router apps. This is the primary renderer and includes the full
component surface.
Use @froggdesign/enter-ui-solid for SolidJS apps. It shares
the visual contract and currently covers stateless and presentational
primitives.
Install the React renderer with the FroggDesign theme package.
pnpm install @froggdesign/enter-ui-react @froggdesign/themeReact and React DOM are peer dependencies. Your app should already provide them.
Import FroggDesign theme CSS before React renderer CSS. In Next.js App Router,
this usually belongs in app/layout.tsx.
import "@froggdesign/theme/styles.css";
import "@froggdesign/enter-ui-react/styles.css";
export default function RootLayout({
children,
}: {
children: React.ReactNode;
}) {
return (
<html lang="en">
<body>{children}</body>
</html>
);
}Theme CSS must load first. EnterUI components read --eui-* variables that default to FroggDesign --fd-* variables.
Import React components from @froggdesign/enter-ui-react.
import {
Badge,
Button,
Card,
CardContent,
DataTable,
type DataTableColumn,
} from "@froggdesign/enter-ui-react";
type Release = {
id: string;
name: string;
status: string;
};
const columns: DataTableColumn<Release>[] = [
{ id: "name", header: "Name", accessorKey: "name" },
{ id: "status", header: "Status", accessorKey: "status" },
];
export function ReactExample({ rows }: { rows: Release[] }) {
return (
<Card>
<CardContent>
<Badge variant="success">React</Badge>
<Button>Deploy</Button>
<DataTable columns={columns} data={rows} />
</CardContent>
</Card>
);
}@froggdesign/enter-ui-react expects React and React DOM from the
consuming app. Complex primitives use focused React runtime dependencies for
behavior such as focus management, menus, portals, and typeahead.
Install the SolidJS renderer with the FroggDesign theme package.
pnpm install @froggdesign/enter-ui-solid @froggdesign/theme solid-jsImport FroggDesign theme CSS before SolidJS renderer CSS.
import "@froggdesign/theme/styles.css";
import "@froggdesign/enter-ui-solid/styles.css";After installing, continue with the SolidJS renderer guide for usage examples, current exports, styling guidance, and the framework boundary for complex interactive components.
@froggdesign/enter-ui-react and
@froggdesign/enter-ui-react/styles.css.@froggdesign/enter-ui-solid and
@froggdesign/enter-ui-solid/styles.css.@froggdesign/theme/styles.css first.EnterUI does not require Tailwind. You can use either renderer with plain CSS, CSS Modules, Sass, vanilla-extract, Panda CSS, Emotion, Tailwind, or an existing custom design system.
Inside this monorepo, apps should use workspace dependencies. Published consumers install from npm.
{
"dependencies": {
"@froggdesign/enter-ui-react": "workspace:*",
"@froggdesign/enter-ui-solid": "workspace:*",
"@froggdesign/theme": "workspace:*"
}
}After installing, run the app and check:
src/components or dist