Componentes Ocean
O Ocean Design System fornece uma biblioteca abrangente de componentes React reutilizáveis, totalmente tipados e acessíveis.
Filosofia dos componentes
Nossos componentes são construídos seguindo os princípios:
- TypeScript nativo - Tipagem completa para melhor experiência de desenvolvimento
- Composição sobre configuração - Componentes flexíveis que se combinam bem
- Design consistente - Todos os componentes seguem o mesmo sistema de design
- Performance - Otimizados para renderização eficiente
Categorias de componentes
🔤 Inputs
Componentes para entrada de dados do usuário:
- Input - Campo de texto básico
- TextArea - Campo de texto multilinha
- Checkbox - Seleção múltipla
- Radio - Seleção única
- Select - Lista de opções
- Switch - Alternar estado
- Search - Campo de busca
- TokenInput - Input com tokens
🧭 Navigation
Componentes para navegação:
- Button - Botões de ação
- Link - Links e navegação
- Breadcrumb - Navegação hierárquica
- ContextualMenu - Menu contextual overlay
- Pagination - Paginação de conteúdo
- Steps - Passos de processo
- TopBar - Barra superior
📊 Data Display
Componentes para exibição de dados:
- Badge - Indicadores pequenos
- Tag - Etiquetas e categorias
- List - Listas estruturadas
- CardGroup - Agrupamento de cards
- CardListItem - Item de lista em card
- ListSelectable - Item de lista selecionável
- Carousel - Carrossel de conteúdo
- Chart - Gráficos e visualizações
- Progress - Barras de progresso
💬 Feedback
Componentes para feedback do usuário:
- Alert - Mensagens de alerta
- Snackbar - Notificações temporárias
- Tooltip - Dicas contextuais
- Modal - Diálogos modais
- Drawer - Painéis laterais
📐 Layout
Componentes para estruturação:
- Container - Container responsivo
- Grid - Sistema de grid flexível
- Divider - Separadores visuais
- Accordion - Conteúdo expansível
- SubHeader - Cabeçalhos de seção
✏️ Typography
Componentes tipográficos:
- Typography - Texto estilizado
- FormLabel - Rótulos de formulário
🛠️ Utilities
Componentes utilitários:
- Shortcut - Atalhos de teclado
- Chips - Chips selecionáveis
- IconButton - Botões com ícone
- WebNotification - Notificações do navegador
Padrões de uso
Importação
// Importação individual (recomendado)
import { Button } from '@useblu/ocean-react';
// Ou importação específica para melhor tree-shaking
import { Button } from '@useblu/ocean-react/Button';
Props padrão
Todos os componentes Ocean compartilham algumas props comuns:
interface CommonProps {
className?: string;
'data-testid'?: string;
id?: string;
}
Contribuindo
Encontrou um bug ou tem uma sugestão de melhoria?
- Abra uma issue
- Veja o guia de contribuição
- Consulte nosso Storybook para exemplos interativos
Próximos passos
- Explore um componente específico na sidebar
- Consulte os fundamentos para entender o sistema de design
- Veja o guia de desenvolvimento para contribuir