{ "name": "doodle-store", "version": "0.1.0", "private": true, "description": "Doodle 服务端、管理后台与 Web 工作区", "packageManager": "pnpm@11.24.0", "engines": { "node": ">=24.20.0 <25", "pnpm": "11.24.0" }, "scripts": { "infra:up": "docker compose --env-file .env -f infra/compose.yaml up -d --wait", "infra:down": "docker compose --env-file .env -f infra/compose.yaml down", "infra:status": "docker compose --env-file .env -f infra/compose.yaml ps", "infra:logs": "docker compose --env-file .env -f infra/compose.yaml logs --tail=100 postgres", "infra:psql": "docker compose --env-file .env -f infra/compose.yaml exec postgres sh -c 'exec psql -U \"$POSTGRES_USER\" -d \"$POSTGRES_DB\"'", "dev": "pnpm --filter @doodle/contracts build && pnpm --filter @doodle/server dev", "build": "pnpm -r --if-present run build", "start": "pnpm --filter @doodle/server start", "typecheck": "pnpm --filter @doodle/contracts build && pnpm -r --if-present run typecheck", "lint": "eslint . --max-warnings 0", "format": "prettier . --write", "format:check": "prettier . --check", "test": "pnpm --filter @doodle/server... run build && pnpm --filter @doodle/server test && pnpm --filter @doodle/asset-sync test", "check": "pnpm format:check && pnpm lint && pnpm typecheck && pnpm test", "test:db": "pnpm --filter @doodle/contracts build && pnpm --filter @doodle/server test:db", "categories:import": "pnpm --filter @doodle/server... run build && pnpm --filter @doodle/server categories:import", "worksheets:import": "pnpm --filter @doodle/server... run build && pnpm --filter @doodle/server worksheets:import", "assets:sync": "pnpm --filter @doodle/asset-sync sync", "assets:test": "pnpm --filter @doodle/asset-sync test", "assets:map": "pnpm --filter @doodle/server... run build && pnpm --filter @doodle/server assets:map" }, "devDependencies": { "@eslint/js": "10.0.1", "eslint": "10.12.0", "globals": "17.13.0", "prettier": "3.9.10", "typescript": "5.9.3", "typescript-eslint": "8.71.1" } }