Installation

Everything you need to start using ozi-ui in your project.

Requirements

Requirement Minimum version
jQuery 3.6+

For more details on framework and UI compatibility → see Compatibility


Method 1 — Composer + Laravel

Recommended installation for Laravel projects. Assets published automatically.

1. Install the package

composer require ozi-ui/core

2. Publish the assets

php artisan vendor:publish --tag=ozi-ui

3. Configure the layout

Add to your main layout — e.g. layouts/app.blade.php:

<head>
    @oziStyles
</head>
<body>
    <script src="https://cdn.jsdelivr.net/npm/jquery@3.7.1/dist/jquery.min.js"></script>
    @oziScripts
</body>

4. Verify the installation

php artisan ozi:check

Expected output:

✔ ozi-ui  v1.0.0  OK

Tip: start with ozi-loaddata for form submission or ozi-select for advanced fields.


Method 2 — CDN

No installation required — ideal for prototypes, simple projects or any stack.

<head>
    <!-- jQuery -->
    <script src="https://cdn.jsdelivr.net/npm/jquery@3.7.1/dist/jquery.min.js"></script>

    <!-- ozi-ui -->
    <script src="https://cdn.oziui.com/v1.0.0/ozi.js"></script>
</head>

Method 3 — Manual

Full control — no Composer, no directives, just files copied to the project.

Download: access GitHub

Folder structure

After downloading, copy the folder to public/plugins/:

public/
└── plugins/
    └── ozi-ui/
        ├── ozi.js
        ├── core/
        ├── modules/
        ├── components/
        ├── behaviors/
        └── themes/

Basic HTML

<head>
    <!-- jQuery -->
    <script src="https://cdn.jsdelivr.net/npm/jquery@3.7.1/dist/jquery.min.js"></script>

    <!-- ozi-ui -->
    <script src="/plugins/ozi-ui/ozi.js"></script>
</head>

Optional configuration

<script>
    oziConf({
        theme:   'bootstrap5',
        lang:    'en',
        plugins: ['loaddata', 'select', 'toggle']
    });
</script>

Without configuration, ozi-ui loads all plugins with the default theme and en language.


Via Blade directives (Laravel)

{{-- Everything --}}
@oziStyles
@oziScripts

{{-- Only some plugins --}}
@oziStyles(['select', 'editor'])
@oziScripts(['loaddata', 'select', 'editor'])

Generated HTML

<!-- @oziStyles(['select', 'editor']) -->
<link rel="stylesheet" href="/plugins/ozi-ui/components/ozi-select/css/ozi-select.css?v=1.0.0">
<link rel="stylesheet" href="/plugins/ozi-ui/components/ozi-editor/css/ozi-editor.css?v=1.0.0">

<!-- @oziScripts(['loaddata', 'select', 'editor']) -->
<script src="/plugins/ozi-ui/ozi.js?v=1.0.0"></script>
<script src="/plugins/ozi-ui/modules/ozi-loaddata/js/ozi-loaddata.js?v=1.0.0"></script>
<script src="/plugins/ozi-ui/components/ozi-select/js/ozi-select.js?v=1.0.0"></script>
<script src="/plugins/ozi-ui/components/ozi-editor/js/ozi-editor.js?v=1.0.0"></script>