Componentes · shadcn

Componentes shadcn

Registro de componentes shadcn/ui aplicados con la marca Seim Seim.

Para herramientas internas (dashboard, kitchen, futuras) usamos shadcn/ui temizado con la marca Seim Seim. Los componentes se instalan localmente en cada proyecto vía npx shadcn add <nombre> y heredan colores, fuentes y espaciado al importar theme.css.

Cuándo NO usar shadcn: superficies cara al cliente con personalidad fuerte (event app, site, reservas guest UI). Ahí van los componentes complejos del producto, documentados en su propia sección.

Cómo conectar tu proyecto a la marca

Importa theme.css al principio del CSS principal del proyecto (típicamente src/index.css o src/styles/global.css):

@import url("https://raw.githubusercontent.com/monoku/seimseim/main/design-system/public/theme.css");

Cuando design.seimseim.com esté desplegado, reemplaza la URL por:

@import url("https://design.seimseim.com/theme.css");

Eso es todo. Los componentes shadcn usan variables estándar (--primary, --background, --ring) que el theme.css ya cablea a tokens Seim Seim.

Documentamos aquí los componentes que se renderizan estáticamente con HTML + CSS — cada uno con su preview real en una página dedicada. Lista en el sidebar: alert, badge, button, checkbox, input, label, spinner, switch, table, tabs, textarea.

Los componentes interactivos (alert-dialog, calendar, dialog, drawer, popover, sheet, tooltip) requieren JavaScript para demostrar su comportamiento — se documentan en ui.shadcn.com/docs/components. Cuando se instalan en un proyecto que importa theme.css, heredan la marca automáticamente igual que los estáticos.

Cómo agregar un componente nuevo

  1. En tu proyecto, corre npx shadcn add <nombre>.
  2. Asegúrate de que el @import del theme.css esté presente en el CSS principal.
  3. Visualízalo y confirma que respeta colores, espaciado y radios de marca. Si no, abre issue.
  4. Agrega una nueva página en src/pages/componentes/shadcn/<nombre>.astro vía PR (preview HTML o placeholder + link a docs oficiales) y registra el componente en src/lib/sidebar-data.ts.

Mapeo resumido de variables shadcn

Variable shadcn Token Seim Seim (light) Token Seim Seim (dark)
--background--color-ss-piedra-100--color-ss-tinta-900
--foreground--color-ss-tinta-900--color-ss-piedra-100
--primary--color-ss-aji-500--color-ss-aji-500
--primary-foreground--color-ss-piedra-100--color-ss-piedra-100
--accent--color-ss-mantel-500--color-ss-mantel-500
--ring--color-ss-mantel-500--color-ss-mantel-500
--destructive--color-ss-aji-700--color-ss-aji-700

Para el mapeo completo, ver public/theme.css .