{ "name": "app", "version": "1.83.0", "description": "A modern home server dashboard for self-hosting apps, media and storage.", "type": "module", "engines": { "node": "^20.19.0 || >=22.12.0", "pnpm": ">=10.18.0" }, "scripts": { "test": "pnpm test:catalog && pnpm test:compose && pnpm test:database && pnpm test:backend && pnpm test:dashboard && pnpm test:worker", "test:catalog": "pnpm --filter @app/app-catalog test", "test:compose": "pnpm --filter @app/compose test", "test:database": "pnpm --filter @app/database test", "test:backend": "pnpm --filter @app/backend test", "test:dashboard": "pnpm --filter @app/dashboard test", "test:worker": "cd apps/root-worker && go test ./...", "pretypecheck": "pnpm --filter @app/database db:generate", "typecheck": "pnpm --filter @app/compose exec tsc --noEmit && pnpm --filter @app/database exec tsc --noEmit && pnpm --filter @app/database exec tsc -p tsconfig.cutover.json && pnpm --filter @app/backend exec tsc --noEmit && pnpm --filter @app/dashboard exec vue-tsc -b", "smoke:backend": "node scripts/smoke-backend.mjs", "pretest:shell": "pnpm --filter @app/database db:generate", "test:shell": "pnpm test:shell:base && pnpm test:shell:cutover", "test:shell:base": "bash scripts/tests/restic-download.test.sh && bash scripts/tests/backup-units.test.sh && bash scripts/tests/signing-key-copies.test.sh && bash scripts/tests/install-verify.test.sh && bash scripts/tests/sign-release.test.sh && bash scripts/tests/install-layout.test.sh", "test:shell:cutover": "bash scripts/tests/database-baseline.test.sh && bash scripts/tests/database-compose-staging.test.sh && bash scripts/tests/database-old-container.test.sh", "check:go": "test -z \"$(gofmt -l apps/root-worker)\" && cd apps/root-worker && go vet ./...", "verify": "pnpm lint && scripts/check-i18n.sh && scripts/check-no-em-dash.sh && pnpm test:shell && pnpm check:go && pnpm typecheck && pnpm test && pnpm build && pnpm smoke:backend", "lint": "eslint .", "lint:fix": "eslint . --fix", "dev": "pnpm -r dev", "build": "pnpm --filter @app/backend build && pnpm --filter @app/dashboard build", "start": "pnpm -r start" }, "keywords": [], "author": "kittyruntime", "license": "MPL-2.0", "packageManager": "pnpm@10.18.0", "pnpm": { "onlyBuiltDependencies": [ "@prisma/client", "@prisma/engines", "prisma", "esbuild", "better-sqlite3" ], "overrides": { "brace-expansion": "5.0.12", "tsx": "4.23.12", "deepmerge-ts": "^8.0.0", "nanoid": "^3.3.18", "fast-uri": "^3.1.8", "source-map-js": "^1.2.2", "postcss-nested@<7": "^7.0.2", "postcss-selector-parser": "^7.1.6", "glob": "^14.0.2", "minimatch": "^11.0.1" } }, "devDependencies": { "@eslint/js": "^10.0.1", "eslint": "^10.13.0", "eslint-plugin-vue": "^10.11.1", "globals": "^17.13.0", "typescript-eslint": "^8.72.0" } }