Next.js 16 dashboard for monitoring and managing the local LLM stack. Runs on port 3100 with dark theme using ByteLyst design tokens. API routes: - GET/POST /api/ollama — model list, running status, load/unload/generate - GET /api/whisper — binary discovery, GGML model inventory - GET /api/system — chip info, RAM/disk usage, brew package versions Dashboard UI: - Top stats row: Ollama status, model count, Whisper status, RAM usage - Ollama models panel with load/unload actions, LOADED badge, details - System panel with progress bars for RAM and disk - Whisper.cpp panel with binary list and model inventory - Brew packages panel with version tracking - Basic prompt modal with Cmd+Enter shortcut - Auto-refresh every 15 seconds Also excludes __LOCAL_LLMs/ from root ESLint config (dashboard has its own config and uses browser globals not available in Node.js context). Tech: Next.js 16, React 19, TailwindCSS v4, Lucide icons, TypeScript
28 lines
563 B
JSON
28 lines
563 B
JSON
{
|
|
"name": "dashboard",
|
|
"version": "0.1.0",
|
|
"private": true,
|
|
"scripts": {
|
|
"dev": "next dev",
|
|
"build": "next build",
|
|
"start": "next start",
|
|
"lint": "eslint"
|
|
},
|
|
"dependencies": {
|
|
"lucide-react": "^0.575.0",
|
|
"next": "16.1.6",
|
|
"react": "19.2.3",
|
|
"react-dom": "19.2.3"
|
|
},
|
|
"devDependencies": {
|
|
"@tailwindcss/postcss": "^4",
|
|
"@types/node": "^20",
|
|
"@types/react": "^19",
|
|
"@types/react-dom": "^19",
|
|
"eslint": "^9",
|
|
"eslint-config-next": "16.1.6",
|
|
"tailwindcss": "^4",
|
|
"typescript": "^5"
|
|
}
|
|
}
|