mirror of
https://github.com/mudler/LocalAI.git
synced 2026-05-29 11:07:18 -04:00
- Strict monotonic Go coverage gate (make test-coverage-check, 45% baseline) run in CI; fixes ginkgo dropping all-but-one coverprofile across multiple recursive roots, builds with -tags auth, and folds in the in-process tests/e2e suite via --coverpkg. - React UI e2e coverage (make test-ui-coverage: vite-plugin-istanbul + nyc, nix-provided Chromium) plus e2e specs for 6 previously-untested pages, and a UI coverage gate (make test-ui-coverage-check) with a small tolerance since e2e line coverage jitters ~0.5pp run-to-run. - pre-commit hook: lint + coverage on Go changes, Playwright e2e + UI coverage gate on react-ui changes; install with make install-hooks. - New Go handler tests (settings, branding), hermetic base64 download test. - fix(ui): model editor reads vram_display (snake_case), so the VRAM estimate renders again; covered by a regression test. Assisted-by: Claude:claude-opus-4-7 Signed-off-by: Richard Palethorpe <io@richiejp.com>
58 lines
1.7 KiB
JSON
58 lines
1.7 KiB
JSON
{
|
|
"name": "localai-react-ui",
|
|
"private": true,
|
|
"version": "0.0.1",
|
|
"type": "module",
|
|
"scripts": {
|
|
"dev": "vite",
|
|
"build": "vite build",
|
|
"preview": "vite preview",
|
|
"lint": "eslint .",
|
|
"i18n:extract": "i18next-parser",
|
|
"test:e2e": "playwright test",
|
|
"test:e2e:ui": "playwright test --ui",
|
|
"build:coverage": "COVERAGE=true vite build",
|
|
"coverage:report": "nyc report"
|
|
},
|
|
"dependencies": {
|
|
"@codemirror/autocomplete": "^6.18.6",
|
|
"@codemirror/commands": "^6.8.1",
|
|
"@codemirror/lang-yaml": "^6.1.2",
|
|
"@codemirror/language": "^6.11.0",
|
|
"@codemirror/lint": "^6.8.5",
|
|
"@codemirror/search": "^6.5.10",
|
|
"@codemirror/state": "^6.5.2",
|
|
"@codemirror/view": "^6.36.8",
|
|
"@fontsource-variable/geist": "^5.2.8",
|
|
"@fontsource-variable/geist-mono": "^5.2.7",
|
|
"@fortawesome/fontawesome-free": "^6.7.2",
|
|
"@lezer/highlight": "^1.2.1",
|
|
"@modelcontextprotocol/ext-apps": "^1.2.2",
|
|
"@modelcontextprotocol/sdk": "^1.25.1",
|
|
"dompurify": "^3.4.0",
|
|
"highlight.js": "^11.11.1",
|
|
"i18next": "^26.0.8",
|
|
"i18next-browser-languagedetector": "^8.2.1",
|
|
"i18next-http-backend": "^3.0.6",
|
|
"marked": "^15.0.7",
|
|
"react": "^19.1.0",
|
|
"react-dom": "^19.1.0",
|
|
"react-i18next": "^17.0.6",
|
|
"react-router-dom": "^7.6.1",
|
|
"yaml": "^2.8.3"
|
|
},
|
|
"devDependencies": {
|
|
"@eslint/js": "^9.27.0",
|
|
"@playwright/test": "1.58.2",
|
|
"@vitejs/plugin-react": "^6.0.2",
|
|
"eslint": "^9.27.0",
|
|
"eslint-plugin-react-hooks": "^5.2.0",
|
|
"eslint-plugin-react-refresh": "^0.4.20",
|
|
"globals": "^16.1.0",
|
|
"i18next-parser": "^9.4.0",
|
|
"nyc": "^18.0.0",
|
|
"vite": "^8.0.14",
|
|
"vite-plugin-istanbul": "^9.0.0"
|
|
}
|
|
}
|