Design System para produtos Kobana
Design System composto por componentes reutilizáveis e acessíveis, construído sobre shadcn/ui.
- Copy, don't install — Componentes são copiados para o projeto, não importados como dependência
- 3 camadas — Primitivos (shadcn/ui) → Compostos (Kobana) → Templates (páginas completas)
- TypeScript-first — Tipagem completa para todos os componentes e hooks
- CLI-driven — Instale e atualize via CLI
npx @kobana/ui init
npx @kobana/ui add status-badge
import { StatusBadge } from "@/components/kobana/status-badge"
export function Example() {
return <StatusBadge status="active" label="Ativo" />
}
| Componente | Descrição |
|---|
| StatusBadge | Badge semântico com cores e ícones por status |
| ConfirmDialog | Dialog de confirmação com variantes |
| PageHeader | Cabeçalho de página com breadcrumbs e ações |
| FilterBar | Barra de filtros com múltiplos tipos |
| FormSection | Seção de formulário com grid responsivo |
| DataTable | Tabela de dados completa com TanStack Table |
| CopyCell | Célula com copy-to-clipboard e truncamento |
| CurrencyInput | Input com formatação de moeda |
| NumberInput | Input numérico com formatação |
| EntityCombobox | Combobox genérico com busca async |
| AddressFormFields | Campos de endereço brasileiro |
| EmptyState | Estado vazio com ação |
| AppLayout | Layout de aplicação responsivo |
| ThemeToggle | Toggle de tema light/dark |
| LocaleToggle | Seletor de idioma |
| RequirePermission | Gate de permissão |
| ExportModal | Modal de exportação com progresso |
| HeaderNotifications | Dropdown de notificações |
| Template | Descrição |
|---|
| ListPage | Página de listagem completa |
| DetailPage | Página de detalhe com tabs |
| FormPage | Página de formulário com guard |
| Hook | Descrição |
|---|
| useDataTable | Estado do DataTable |
| useFilters | Filtros com URL sync |
| usePagination | Paginação server-side |
| useDebounce | Debounce genérico |