You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Add an onu framework whose components output the same markup classes and design tokens as @javaabu/onu, so Blade and React pages look identical. Reuse Onu's Tailwind CSS (tokens and component classes) rather than copying values; document how apps include it.
The classes come from Onu, not copies.scripts/onu-classes.mjs server-renders @javaabu/onu's own components (FormField, TextInput, NativeSelect, Checkbox, Button × every variant/size, Callout, StatusBadge, Card, Accordion, Tabs, NavTabs, Modal, Table, Pagination, Empty, DescriptionList) and records every data-slot's classes in resources/onu/classes.php. The Blade views read them through Frameworks\Onu. The Assets CI job fails if the file doesn't match the installed Onu version (pnpm check).
Tokens and theme come from Onu. Apps import @javaabu/onu/tailwind.css and then vendor/javaabu/forms/resources/css/onu.css. That file only @sources the views and class map, and styles the native controls Onu draws with React (checkbox, radio, <dialog>, file input), using Onu's CSS variables.
Apps without Tailwind get a prebuilt dist/onu.css (~46 KB gzipped) via php artisan vendor:publish --tag=forms-assets.
onu is the default framework.
Intentional differences from React (documented in docs/frameworks/onu.md): there are no floating labels (Onu has none), checkboxes and radios are native inputs, and modals and accordions use <dialog> / <details>.
Activity
Add the Onu framework, using Onu's own classes and tokens
n4ff4h commentedon Nov 4, 2026
Done in d26d4c1 on
next-gen; CI green.How it works:
scripts/onu-classes.mjsserver-renders@javaabu/onu's own components (FormField,TextInput,NativeSelect,Checkbox,Button× every variant/size,Callout,StatusBadge,Card,Accordion,Tabs,NavTabs,Modal,Table,Pagination,Empty,DescriptionList) and records everydata-slot's classes inresources/onu/classes.php. The Blade views read them throughFrameworks\Onu. The Assets CI job fails if the file doesn't match the installed Onu version (pnpm check).@javaabu/onu/tailwind.cssand thenvendor/javaabu/forms/resources/css/onu.css. That file only@sources the views and class map, and styles the native controls Onu draws with React (checkbox, radio,<dialog>, file input), using Onu's CSS variables.dist/onu.css(~46 KB gzipped) viaphp artisan vendor:publish --tag=forms-assets.onuis the default framework.Intentional differences from React (documented in
docs/frameworks/onu.md): there are no floating labels (Onu has none), checkboxes and radios are native inputs, and modals and accordions use<dialog>/<details>.