package.json
Rama main · réplica de lectura del repositorio original.
{
"name": "qa-studio",
"private": true,
"version": "0.0.1",
"type": "module",
"scripts": {
"dev": "vite dev",
"build": "prisma generate && vite build",
"build:analyze": "prisma generate && ANALYZE=true vite build && node -e \"console.log('Open build-stats.html at the repository root for the bundle treemap.')\"",
"preview": "vite preview",
"prepare": "svelte-kit sync || echo ''",
"postinstall": "prisma generate || echo 'Prisma generate skipped'",
"check": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json",
"check:watch": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch",
"format": "prettier --write .",
"lint": "prettier --check . && eslint .",
"test:unit": "vitest",
"test": "npm run test:unit -- --run && npm run test:e2e",
"test:e2e": "playwright test",
"test:e2e:headless": "playwright test --headed=false",
"docker:dev": "docker-compose up",
"docker:dev:build": "docker-compose up --build",
"docker:dev:down": "docker-compose down",
"docker:dev:clean": "docker-compose down -v",
"docker:prod": "docker-compose -f docker-compose.yml -f docker-compose.prod.yml up -d",
"docker:prod:build": "docker-compose -f docker-compose.yml -f docker-compose.prod.yml up -d --build",
"docker:logs": "docker-compose logs -f web",
"docker:logs:all": "docker-compose logs -f",
"docker:shell": "docker-compose exec web sh",
"docker:restart": "docker-compose restart web",
"docker:db:studio": "docker-compose exec web npx prisma studio",
"docker:db:migrate": "docker-compose exec web npx prisma migrate dev",
"docker:db:reset": "docker-compose exec web npx prisma migrate reset",
"docker:db:seed": "docker-compose exec web npx prisma db seed",
"docker:db:backup": "docker-compose exec postgres pg_dump -U qastudio qastudio > backup-$(date +%Y%m%d-%H%M%S).sql",
"docker:db:restore": "echo 'Usage: docker-compose exec -T postgres psql -U qastudio qastudio < backup-file.sql'"
},
"devDependencies": {
"@eslint/compat": "^2.1.1",
"@eslint/js": "^10.0.1",
"@fontsource/fira-mono": "^5.3.0",
"@inlang/paraglide-js": "^2.29.1",
"@neoconfetti/svelte": "^2.2.2",
"@playwright/test": "^1.64.1",
"@prisma/client": "^7.10.1",
"@qastudio-dev/playwright": "^1.5.0",
"@skeletonlabs/skeleton": "^5.0.1",
"@skeletonlabs/skeleton-svelte": "^5.0.1",
"@sveltejs/adapter-vercel": "^6.3.4",
"@sveltejs/kit": "^2.70.3",
"@sveltejs/vite-plugin-svelte": "^7.3.1",
"@tailwindcss/forms": "^0.5.11",
"@tailwindcss/typography": "^0.5.20",
"@tailwindcss/vite": "^4.3.3",
"@types/adm-zip": "^0.6.0",
"@types/bcrypt": "^6.0.0",
"@types/node": "^24.19.1",
"@types/nodemailer": "^8.0.0",
"@types/pg": "^8.23.1",
"@types/simple-oauth2": "^5.0.8",
"@types/swagger-ui-dist": "^3.30.6",
"@vitest/browser": "^5.0.5",
"@vitest/browser-playwright": "^5.0.3",
"@vitest/coverage-v8": "^5.0.3",
"eslint": "^10.13.0",
"eslint-config-prettier": "^10.1.8",
"eslint-plugin-svelte": "^3.23.1",
"globals": "^17.12.0",
"mdsvex": "^0.12.8",
"playwright": "^1.60.0",
"prettier": "^3.9.10",
"prettier-plugin-svelte": "^4.1.1",
"prettier-plugin-tailwindcss": "^0.8.1",
"prisma": "^7.10.1",
"rollup-plugin-visualizer": "^7.1.1",
"svelte": "^5.57.2",
"svelte-check": "^4.7.7",
"svelte-meta-tags": "^5.0.3",
"tailwindcss": "^4.3.0",
"tsx": "^4.23.15",
"typescript": "^6.0.3",
"typescript-eslint": "^8.72.0",
"vite": "^8.3.5",
"vitest": "^5.0.3",
"vitest-browser-svelte": "^3.1.0"
},
"dependencies": {
"@asteasolutions/zod-to-openapi": "^9.1.0",
"@lucide/svelte": "^1.62.0",
"@prisma/adapter-pg": "^7.10.1",
"@upstash/ratelimit": "^2.2.0",
"@upstash/redis": "^1.40.0",
"@vercel/blob": "^2.8.2",
"@vercel/functions": "^3.10.4",
"adm-zip": "^0.6.1",
"bcrypt": "^6.0.0",
"botid": "^1.5.11",
"dotenv": "^18.0.9",
"gray-matter": "^4.0.3",
"html5-qrcode": "^2.3.8",
"marked": "^18.1.2",
"marked-highlight": "^2.2.4",
"nanoid": "^6.0.2",
"nodemailer": "^10.2.1",
"openai": "^7.45.1",
"otpauth": "^9.5.2",
"pg": "^8.23.0",
"shiki": "^4.4.3",
"simple-oauth2": "^5.1.0",
"stripe": "^23.0.1",
"sveltekit-api": "^0.6.1",
"swagger-ui-dist": "^5.34.0",
"zod": "^4.4.3"
},
"overrides": {
"@hono/node-server": ">=1.19.13",
"cookie": "^0.7.0",
"zod": "^4.4.3",
"zod-validation-error": "^5.0.0",
"sveltekit-api": {
"@asteasolutions/zod-to-openapi": "^9.1.0",
"zod": "^4.4.3",
"zod-validation-error": "^5.0.0"
}
}
}