2.4 KiB
2.4 KiB
LLM Lab Dashboard — Vercel Deployment Roadmap
App: LLM Lab Dashboard (Mission Control) Repo:
learning_ai_local_llms→dashboard/Status: 🔴 Not viable on Vercel — requires local Ollama
Current State
- Framework: Next.js 16.1.6, React 19.2.3, TailwindCSS v4
- Output: ❌ Hardcoded
output: 'standalone' - Dependencies: 3
@bytelyst/*— 2 viafile:refs (design-tokens,ui), 1 via Gitea - Build:
next build - Architecture: Dashboard with API routes that proxy to local Ollama (
/api/ollama/*) - System info routes: Read hardware stats via
vm_stat,top,system_profiler— macOS only
Why Vercel Won't Work
- Ollama dependency: API routes proxy to Ollama (
OLLAMA_HOST). Ollama must run on the same machine or reachable network. Vercel serverless functions can't access a local Ollama instance. - System commands: Routes call macOS system commands (
vm_stat,system_profiler) which don't exist on Vercel's Linux runtime. - Whisper integration: TTS/STT routes depend on local
whisper-cppbinary. - Purpose: This is a local machine management tool, not a cloud app.
If Deployment Is Still Desired (Static Shell Only)
Gap 1: Convert file: refs (~5 min)
File: dashboard/package.json
- "@bytelyst/design-tokens": "file:../../learning_ai_common_plat/packages/design-tokens",
+ "@bytelyst/design-tokens": "^0.1.0",
- "@bytelyst/ui": "file:../../learning_ai_common_plat/packages/ui",
+ "@bytelyst/ui": "^0.1.0",
Gap 2: Make output Vercel-aware (~5 min)
File: dashboard/next.config.ts
- output: 'standalone',
+ ...(process.env.VERCEL ? {} : { output: 'standalone' }),
Gap 3: Registry Access (~5 min)
- Update
.npmrcto Azure VM Gitea URL - Set
GITEA_NPM_TOKENas a Vercel environment variable
Gap 4: Disable/stub server-side routes (~30 min)
- Stub out system info routes (return mock data or error)
- Make Ollama proxy routes return "configure OLLAMA_HOST" message
- Gate system commands behind runtime check
Recommendation
Do NOT deploy to Vercel. This app is purpose-built for local/Docker use. The API routes are the core value and none work in a serverless environment.
Alternative: Keep using Docker Compose or the scripts/start-dashboard.sh launcher.