Skua
Status: pre-release / under construction. Not yet on Hex. The full research-backed plan lives in PLAN.md.
Form-first UI components for Phoenix LiveView (1.1+) on Phoenix 1.8+: rich select, date picker, OTP input, dialogs, toasts and top-layer panels — server-authoritative, viewport-aware, themeable from 12 CSS tokens, with zero third-party JavaScript (one colocated-hooks import, ~7 KB min+gzip).
Installed and managed through mix tasks built on Igniter, including
--strip-daisy to replace Phoenix 1.8's bundled daisyUI on fresh apps.
Install
Add the dep, then run the installer — it wires CSS/JS/imports, replaces the
default Phoenix home with a Skua starter page (theme toggle, component
showcase, Phoenix + Skua version line), and strips the default branding:
# mix.exs — while pre-Hex, use a path or git dep
{:skua, path: "../skua"}
mix deps.get
mix skua.install # idempotent; re-run any time
mix phx.server # open /
The installer is path-dep aware (no deps/skua needed) and 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, colocated hooks, and mix tasks land here per the roadmap phases._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.