apps/web/package.json
Rama main · réplica de lectura del repositorio original.
{
"name": "weir-web",
"private": true,
"version": "0.0.1-dev",
"license": "AGPL-3.0-or-later",
"type": "module",
"engines": {
"node": ">=24.15"
},
"scripts": {
"dev": "npm run dev:stop-api && npm run dev:stop-web && node ./scripts/run-dev-stack.mjs",
"dev:stop-api": "node ../../scripts/stop-dev-api-port.mjs",
"dev:stop-web": "node ../../scripts/stop-dev-web-port.mjs",
"dev:quick": "node ./scripts/run-dev-stack.mjs",
"dev:web": "node ./node_modules/vite/bin/vite.js",
"lint": "eslint src --max-warnings 0",
"lint:fix": "eslint src --fix",
"format": "prettier --check \"src/**/*.{ts,tsx,css}\" \"index.html\" \"vite.config.ts\"",
"format:fix": "prettier --write \"src/**/*.{ts,tsx,css}\" \"index.html\" \"vite.config.ts\"",
"build": "npm run check:tokens && tsc -p tsconfig.json --noEmit && vite build && npm run compress:assets && npm run check:bundle-budget",
"compress:assets": "node ./scripts/compress-assets.mjs",
"check:tokens": "node ./scripts/check-design-tokens.mjs",
"check:bundle-budget": "node ./scripts/check-bundle-budget.mjs",
"preview": "vite preview",
"test": "vitest run",
"test:coverage": "vitest run --coverage",
"web-bodies:write": "vitest run src/test/wire/destructive-requests.test.ts -u",
"api:types:generate": "openapi-typescript ./openapi/weir-openapi.json -o ./src/lib/api/generated/openapi-types.ts && prettier --write ./src/lib/api/generated/openapi-types.ts",
"api:types:sync": "npm run api:types:generate",
"api:types:check": "npm run api:types:generate && git diff --exit-code -- openapi/weir-openapi.json src/lib/api/generated/openapi-types.ts",
"ci": "npm run lint && npm run format && npm run check:tokens && npm run build && npm run test"
},
"dependencies": {
"@fontsource-variable/inter": "^5.3.0",
"@fontsource-variable/jetbrains-mono": "^5.3.0",
"@tanstack/react-query": "^5.103.2",
"react": "^19.3.0",
"react-dom": "^19.3.0",
"react-router-dom": "^7.18.4"
},
"devDependencies": {
"@eslint/js": "^9.39.5",
"@resvg/resvg-js": "^2.6.2",
"@stryker-mutator/core": "10.0.0",
"@tailwindcss/vite": "^4.3.3",
"@testing-library/jest-dom": "^7.0.1",
"@testing-library/react": "^16.3.3",
"@types/react": "^19.3.0",
"@types/react-dom": "^19.3.0",
"@vitejs/plugin-react": "^6.1.1",
"@vitest/coverage-v8": "^5.0.5",
"eslint": "^9.39.5",
"eslint-config-prettier": "^10.1.8",
"eslint-plugin-jsx-a11y": "^6.10.2",
"eslint-plugin-react": "^7.37.5",
"eslint-plugin-react-hooks": "^7.1.1",
"fast-check": "^4.10.2",
"globals": "^17.12.0",
"istanbul-lib-coverage": "3.2.2",
"istanbul-lib-report": "3.0.1",
"istanbul-lib-source-maps": "5.0.6",
"istanbul-reports": "3.2.0",
"jsdom": "^30.1.1",
"knip": "^6.40.0",
"openapi-typescript": "^7.10.1",
"prettier": "^3.9.9",
"tailwindcss": "^4.3.3",
"typescript": "~5.9.3",
"typescript-eslint": "^8.70.1",
"vite": "^8.3.4",
"vite-plugin-istanbul": "9.0.1",
"vitest": "^5.0.5"
},
"overrides": {
"qs": "6.17.0",
"minimatch": "11.0.3"
}
}