Skip to content

ui

@evolve-storefront/ui · v1.0.0 · Storybook ↗

Presentational building blocks for a storefront: buttons, form controls, dialogs, menus and layout primitives. They are generic and driven by props, with no data fetching and no commerce concepts. Every structural element carries a data-component attribute, so you can restyle it without copying the component, and every component has its own import path (@evolve-storefront/ui/button).

Get started

  1. Install the package with the peer dependencies it needs. It comes from the Evolve registry, which needs a one-time sign-in.

    pnpm add @evolve-storefront/ui react
    Requirements1
    react>=19
  2. Import its styles in the stylesheet where you load Tailwind. Without them the components render unstyled.

    @import "@evolve-storefront/ui/styles.css";

Then render it on a page:

import { Button } from "@evolve-storefront/ui/button";
import { Input, Label, TextField } from "@evolve-storefront/ui/text-field";
export function NewsletterForm({ label, submit }: { label: string; submit: string }) {
return (
<form className="flex items-end gap-2">
<TextField name="email" type="email" required>
<Label>{label}</Label>
<Input autoComplete="email" />
</TextField>
<Button type="submit">{submit}</Button>
</form>
);
}

Components

What you place on your pages. Each one has a preview, its props, and how to change its layout.