Generates editable starter pages and wires their routes:
mix skua.gen.pagesCreates:
<App>Web.SiteNav— a shared top nav (Overview · Components, plus auth-aware links: a signed-in user's email + Log out, or Register / Sign in). It's injected intoLayouts.app, so every<Layouts.app>-wrapped page (auth pages, dashboard) gets it, and rendered directly by the homepage (which has no layout of its own).<App>Web.HomeLiveat/— a hero with the live Phoenix + Skua version badges and a showcase of real Skua components (cards, badges, form inputs, an alert, tabs, a table, and a list).<App>Web.DashboardLiveat/dashboard— an authenticated page with a left sidebar (Dashboard / Settings + Log out pinned to the bottom) and a content area of Skua stat cards.
Run mix skua.install first (so the Skua components are imported) and, for
the auth-aware nav + the dashboard's auth gate, mix skua.gen.auth.
Routing
/ is pointed at HomeLive via Skua.Install.Patches.router/1. /dashboard
is inserted into the :require_authenticated_user live_session that
phx.gen.auth generates, so it sits behind login. If auth isn't installed (no
such live_session), the dashboard route is added to the plain / scope
instead and a notice is printed — it then renders for everyone until you add
auth.
Idempotent: re-running overwrites the generated pages and leaves the routes +
the Layouts.app nav injection in place.