trails/package.json
Ullrich Schäfer 40b9c425a0
Add testing strategy: Vitest for unit tests, Playwright for E2E
- Vitest: unit tests for packages, components, and app logic (jsdom env,
  @testing-library/react, co-located test files)
- Playwright: E2E browser tests per app (journal.test.ts, planner.test.ts),
  auto-starts dev servers, scoped via testMatch
- Sample unit test for types package
- Smoke E2E tests for both apps
- Updated CLAUDE.md with test commands and strategy

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-22 12:36:09 +01:00

45 lines
1.2 KiB
JSON

{
"name": "trails.cool",
"private": true,
"description": "Collaborative route planning + federated activity sharing for outdoor enthusiasts",
"license": "MIT",
"packageManager": "pnpm@10.6.5",
"engines": {
"node": ">=20"
},
"scripts": {
"dev": "turbo dev",
"build": "turbo build",
"lint": "turbo lint",
"test": "vitest run",
"test:watch": "vitest",
"test:e2e": "playwright test",
"test:e2e:ui": "playwright test --ui",
"typecheck": "turbo typecheck"
},
"devDependencies": {
"@eslint/js": "^10.0.1",
"@playwright/test": "^1.58.2",
"@react-router/dev": "^7.13.1",
"@react-router/node": "^7.13.1",
"@react-router/serve": "^7.13.1",
"@tailwindcss/vite": "^4.2.2",
"@testing-library/jest-dom": "^6.9.1",
"@testing-library/react": "^16.3.2",
"@types/react": "^19.2.14",
"@types/react-dom": "^19.2.3",
"eslint": "^10.1.0",
"eslint-config-prettier": "^10.1.8",
"jsdom": "^29.0.1",
"playwright": "^1.58.2",
"prettier": "^3.8.1",
"react": "^19.2.4",
"react-dom": "^19.2.4",
"react-router": "^7.13.1",
"tailwindcss": "^4.2.2",
"turbo": "^2.8.20",
"typescript-eslint": "^8.57.1",
"vite": "catalog:",
"vitest": "^4.1.0"
}
}