Why is there no MUI dependency?
The UI follows the Sneat visual direction, but this implementation uses local React components and CSS rather than importing the MUI version of the template.
Why does the root route redirect?
The application root redirects to /app/dashboard so users land directly in the dashboard workspace.
Why is suppressHydrationWarning used?
The theme bootstrap script mutates the html element before hydration. suppressHydrationWarning prevents React from warning about intentional theme differences.
How do I add a new sidebar item?
Add a NavItem to lib/navigation.ts, add the icon type if necessary, map it in components/app-shell.tsx, and place it in navigationSections.
How do I verify production?
Run npm run check, restart azora-app.service, verify systemctl status, and smoke test the affected live routes.