{ "name": "pokedex-online", "version": "1.0.0", "type": "module", "description": "A modern Vue 3 web application for exploring Pokémon data", "workspaces": [ "server" ], "scripts": { "dev": "vite", "build": "npm run build:frontend && npm run build:backend", "build:frontend": "vite build", "build:backend": "npm run build --workspace=server", "build:verify": "node scripts/verify-build.js", "preview": "vite preview", "oauth-proxy": "npm run dev --workspace=server", "dev:full": "concurrently \"npm run dev\" \"npm run oauth-proxy\"", "test": "vitest", "test:ui": "vitest --ui", "test:coverage": "vitest --coverage", "test:run": "vitest run", "test:all": "npm run test:run && npm run test:run --workspace=server", "install:all": "npm install && npm install --workspace=server", "lint": "echo 'Add ESLint when ready'", "docker:build": "docker compose -f docker-compose.production.yml build", "docker:up": "docker compose -f docker-compose.production.yml up -d", "docker:down": "docker compose -f docker-compose.production.yml down", "docker:logs": "docker compose -f docker-compose.production.yml logs -f", "deploy": "./deploy.sh", "deploy:internal": "./deploy.sh --target internal", "deploy:external": "./deploy.sh --target external", "deploy:dry-run": "./deploy.sh --dry-run", "deploy:quick": "./deploy.sh --skip-tests --no-backup", "deploy:manual": "node ../../../utils/deploy-pokedex.js" }, "dependencies": { "highlight.js": "^11.11.1", "vue": "^3.4.15", "vue-router": "^4.6.4", "vue-virtual-scroller": "^2.0.0-beta.8" }, "devDependencies": { "@vitejs/plugin-vue": "^5.0.3", "@vitest/coverage-v8": "^1.6.1", "@vitest/ui": "^1.6.1", "@vue/test-utils": "^2.4.6", "concurrently": "^8.2.2", "happy-dom": "^12.10.3", "jsdom": "^23.2.0", "terser": "^5.46.0", "vite": "^5.0.12", "vitest": "^1.6.1" } }