Instalação
Tudo que você precisa para começar a usar o ozi-ui no seu projeto.
Requisitos
| Requisito | Versão mínima |
|---|---|
| Navegador moderno | Suporte a fetch, WeakMap e AbortController |
| Dependências JS | Nenhuma — o ozi-ui v2 é JavaScript puro |
Para mais detalhes de compatibilidade com frameworks e UI → ver Compatibilidade
Método 1 — Composer + Laravel
Instalação recomendada para projetos Laravel. Assets publicados automaticamente.
1. Instale o pacote
composer require ozi-ui/core:^2.0
2. Publique os assets
php artisan vendor:publish --tag=ozi-ui
3. Configure o layout
Adicione no seu layout principal — ex: layouts/app.blade.php:
<head>
@oziStyles
@oziScripts
<script>oziConf({ theme: 'bootstrap5', lang: 'pt-BR' });</script>
</head>
<body>
{{-- ... --}}
@livewireScripts
</body>
Nenhum
<script>de jQuery é necessário. Na v2 o ozi-ui não carrega nem exige jQuery.
4. Verifique a instalação
php artisan ozi:check
Saída esperada:
✔ ozi-ui v2.0.0 OK
Dica: comece pelo
ozi-loaddatapara envio de formulários ou peloozi-selectpara campos avançados.
Método 2 — CDN
Sem instalação — ideal para protótipos, projetos simples ou qualquer stack.
<head>
<script src="https://cdn.oziui.com/v2.0.0/ozi.js"></script>
</head>
Método 3 — Manual
Controle total — sem Composer, sem diretivas, só arquivos copiados para o projeto.
Faça o download: acesse o GitHub
Estrutura de pastas
Após o download, copie a pasta para public/plugins/:
public/
└── plugins/
└── ozi-ui/
├── ozi.js
├── core/
├── modules/
├── components/
├── behaviors/
├── integrations/
└── themes/
HTML básico
<head>
<script src="/plugins/ozi-ui/ozi.js"></script>
</head>
Configuração opcional
<script>
oziConf({
theme: 'bootstrap5',
lang: 'pt-BR',
plugins: ['loaddata', 'select', 'toggle']
});
</script>
Sem configuração, o ozi-ui carrega todos os plugins com tema
defaulte idiomaen.
Temas — linkar o CSS
O @oziStyles emite o CSS dos componentes, não o do tema. Se você usa bootstrap5, tailwind ou um tema próprio, linke os arquivos do tema manualmente no <head>:
<link rel="stylesheet" href="/plugins/ozi-ui/themes/default/tokens.css">
<link rel="stylesheet" href="/plugins/ozi-ui/themes/default/overrides.css">
<link rel="stylesheet" href="/plugins/ozi-ui/themes/tailwind/tokens.css">
<link rel="stylesheet" href="/plugins/ozi-ui/themes/tailwind/overrides.css">
<link rel="stylesheet" href="/plugins/ozi-ui/themes/tailwind/dark.css">
<script>oziConf({ theme: 'tailwind' });</script>
O tema default é a fonte dos valores de fallback — carregue-o antes do tema escolhido. O mesmo build JS serve qualquer tema: oziConf({ theme }) troca apenas o mapa de classes.
Via diretivas Blade (Laravel)
{{-- Tudo --}}
@oziStyles
@oziScripts
{{-- Só alguns plugins --}}
@oziStyles(['select', 'editor'])
@oziScripts(['loaddata', 'select', 'editor'])
HTML gerado
<!-- @oziStyles(['select', 'editor']) -->
<link rel="stylesheet" href="/plugins/ozi-ui/components/ozi-select/css/ozi-select.css">
<link rel="stylesheet" href="/plugins/ozi-ui/components/ozi-editor/css/ozi-editor.css">
<!-- @oziScripts(['loaddata', 'select', 'editor']) -->
<script src="/plugins/ozi-ui/core/helpers/ozi-helpers.js?v=2.0.0"></script>
<script src="/plugins/ozi-ui/core/ozi-conf.js?v=2.0.0"></script>
<script src="/plugins/ozi-ui/modules/ozi-loaddata/js/ozi-loaddata.js?v=2.0.0"></script>
<script src="/plugins/ozi-ui/components/ozi-select/js/ozi-select.js?v=2.0.0"></script>
<script src="/plugins/ozi-ui/components/ozi-editor/js/ozi-editor.js?v=2.0.0"></script>
O
?v=acompanha a versão instalada do pacote — serve de cache-bust automático a cada release.