learning_ai_common_plat/__LOCAL_LLMs/dashboard
saravanakumardb1 75a3cd0826 refactor(local-llm): Sprint 3 — component extraction, error boundary, security (CQ1,CQ3,CQ4,S1,S2)
Component extraction (CQ1):
- lib/types.ts: All interfaces (OllamaData, SystemData, Toast, etc.)
- lib/format.ts: formatBytes, formatUptime utilities
- lib/ollama-config.ts: Shared OLLAMA_URL constant
- components/StatusDot.tsx: Status indicator component
- components/ProgressBar.tsx: Progress bar component
- page.tsx: Now imports from extracted modules, reduced from 1180 to
  1077 lines (interfaces + utilities + sub-components removed)

Error boundary (CQ4):
- error.tsx: Next.js App Router error boundary with styled error UI,
  stack trace preview, and 'Try again' button

Shared config (CQ3):
- All 3 Ollama API routes now import OLLAMA_URL from lib/ollama-config.ts
  instead of duplicating the env var fallback

Security (S1):
- Add MODEL_NAME_RE regex validation on POST /api/ollama — rejects
  invalid model names before passing to Ollama API

Security (S2):
- Replace exec() with execFile() for brew package version check —
  prevents shell injection if targets list ever becomes dynamic
2026-02-19 15:21:22 -08:00
..
public feat(local-llm): add Mission Control dashboard v1 2026-02-19 13:02:48 -08:00
src/app refactor(local-llm): Sprint 3 — component extraction, error boundary, security (CQ1,CQ3,CQ4,S1,S2) 2026-02-19 15:21:22 -08:00
.gitignore feat(local-llm): add Mission Control dashboard v1 2026-02-19 13:02:48 -08:00
eslint.config.mjs feat(local-llm): add Mission Control dashboard v1 2026-02-19 13:02:48 -08:00
next.config.ts feat(local-llm): add Mission Control dashboard v1 2026-02-19 13:02:48 -08:00
package-lock.json feat(local-llm): add Mission Control dashboard v1 2026-02-19 13:02:48 -08:00
package.json feat(local-llm): add Mission Control dashboard v1 2026-02-19 13:02:48 -08:00
postcss.config.mjs feat(local-llm): add Mission Control dashboard v1 2026-02-19 13:02:48 -08:00
README.md feat(local-llm): add Mission Control dashboard v1 2026-02-19 13:02:48 -08:00
tsconfig.json feat(local-llm): add Mission Control dashboard v1 2026-02-19 13:02:48 -08:00

This is a Next.js project bootstrapped with create-next-app.

Getting Started

First, run the development server:

npm run dev
# or
yarn dev
# or
pnpm dev
# or
bun dev

Open http://localhost:3000 with your browser to see the result.

You can start editing the page by modifying app/page.tsx. The page auto-updates as you edit the file.

This project uses next/font to automatically optimize and load Geist, a new font family for Vercel.

Learn More

To learn more about Next.js, take a look at the following resources:

You can check out the Next.js GitHub repository - your feedback and contributions are welcome!

Deploy on Vercel

The easiest way to deploy your Next.js app is to use the Vercel Platform from the creators of Next.js.

Check out our Next.js deployment documentation for more details.