Form-first UI components for Phoenix LiveView (1.1+) on Phoenix 1.8+: rich select, date picker, OTP input, dialogs, menus, tables, toasts and top-layer panels — server-authoritative, viewport-aware, themeable from 12 CSS tokens, with zero third-party JavaScript (one JS import, ~9 KB min+gzip).
A daisyUI replacement you install and manage through mix tasks built on
Igniter — including --strip-daisy to remove Phoenix 1.8's bundled daisyUI.
Install
One command — Igniter adds the dep and wires everything (CSS, JS hooks,
component imports, flash → Skua toasts, strips the default Phoenix navbar, and
scaffolds an editable starter home at /):
mix igniter.install skua # existing app
mix igniter.new my_app --with phx.new --install skua # brand-new app
Skua replaces daisyUI, so the installer removes Phoenix 1.8's bundled daisyUI
by default — it deletes the vendored files and bridges daisy's color utilities
(bg-base-100, text-error, …) to Skua tokens so existing markup keeps
resolving. Keep daisyUI instead with --no-strip-daisy:
mix igniter.install skua --no-strip-daisy
(If your daisyUI config was customized with nested rules, the installer leaves it alone and prints a manual step rather than risk mangling it.)
Without Igniter — add the dep and run the plain Mix task (Igniter is optional; the task still works):
# mix.exs
{:skua, "~> 0.2.0"}mix deps.get
mix skua.install # --strip-daisy optional
mix phx.server # open /
Every step is idempotent — re-run any time after mix deps.update skua. The
installer degrades to printed manual steps if your app diverges from the default
layout. Local-testing notes in guides/local-testing.md.
Repository layout
PLAN.md— the full project plan (architecture decisions, installer spec, strip-daisy design, release pipeline, roadmap).assets/css/skua.css— the token + component CSS layer (the stable artifact).lib/— components, the install mix tasks (Skua.Install.Patchesholds the shared install logic), and supporting modules._component_defaults/— reference prototypes the library is being built from (styled-layer HTML demo, LiveView hook/component prototypes, and the skua.sh brand system). Not shipped in the hex package.
License
MIT — see LICENSE.md.