EnterUI turns FroggDesign into reusable component primitives for product interfaces.
EnterUI is the component system for building consistent product interfaces. The primary package serves React and Next.js product work across forms, tables, shell navigation, admin pages, dashboards, settings, workflow, and analytics. A separate SolidJS renderer serves Solid apps that need the same visual contract without React runtime dependencies.
FroggDesign is the visual language behind consistent product interfaces. It owns
the token model and theme variables. EnterUI owns the renderer APIs, component
CSS, .eui-* classes, accessibility wrappers, and docs.
EnterUI is designed around one practical promise: beautiful by default, flexible by design.
className, but it is never required.Primitive colors, typography, spacing, radius, shadow, and semantic token values.
FroggDesign --fd-* CSS variables for light and dark mode.
Small shared utilities used by EnterUI and consumers, including cn.
React components, component CSS, public types, .eui-* classes, and component-facing variables.
SolidJS renderer components that reuse the EnterUI class and CSS-variable contract.
EnterUI currently documents 190 canonical component pages. Public alias exports such as Drawer, DateInput, PinInput, TokenInput, Dropzone, Timeline, KeyValueList, Divider, AttachmentList, ObjectDetail, and StepperProgress are documented on their underlying component pages instead of separate alias pages.
The component surface includes:
Product-specific workflows should stay inside your app. EnterUI owns shared primitives and public contracts, not feature policy.
EnterUI follows the FroggDesign rule: less green, more precision. Neutral charcoal, slate, and white surfaces carry the interface. Green is reserved for small success, selected, or brand signals. Components should feel calm and useful in dense product workflows.
Use EnterUI when you need a component system that feels like a mature product library, supports React, Next.js, and SolidJS renderer paths, remains portable across styling stacks, and can be themed through stable CSS variables.