NixServer now has a dark orange-accented WHM-style layout with
collapsible sidebar grouped by function, stat bar, service manager
table with actions, quick-action icon grid, server info bar, and
a branded split-panel login page.
NixClient now has a cPanel-style feature icon grid with category
sections, live search, account sidebar with usage bars, and a
blue-themed login page.
terser is not in package.json so vite fails at the minification step
after transforming all modules — the script exits non-zero, killing
the installer. esbuild is bundled with vite and requires no extra dep.
- nixserver/: React 18 + TypeScript + Vite + Tailwind
- Login page + placeholder admin dashboard with card grid
- Blue accent color (#3b82f6)
- Full Tailwind + PostCSS + TypeScript setup
- nixclient/: identical structure, user-facing panel
- Green accent color (#10b981)
- Same build tooling as NixServer
- install.sh: new 'Building NixServer & NixClient UIs' step
- npm install + npm run build for each
- Outputs to /opt/nixpanel/nixserver/dist and /opt/nixpanel/nixclient/dist
- Both panels immediately accessible via Apache on 2087 and 2083
- Skips gracefully if source not present (early dev)