{ "name": "travelhub", "version": "0.0.0", "private": true, "description": "Multi-tenant flight booking sample: Angular, Go, PostgreSQL.", "scripts": { "test": "npm run test:go && npm run test:web && npm run test:e2e", "test:e2e": "cd e2e && npx playwright test", "test:e2e:headed": "cd e2e && npx playwright test --headed", "test:e2e:report": "cd e2e && npx playwright show-report", "test:e2e:ui": "cd e2e && npx playwright test --ui", "test:go": "cd backend && go test ./...", "test:go:cover": "cd backend && go test -coverprofile=coverage.out ./... && go tool cover -func=coverage.out", "test:go:race": "cd backend && go test -race ./...", "test:go:verbose": "cd backend && go test -v ./...", "test:unit": "npm run test:go && npm run test:web", "test:web": "cd frontend && npx ng test --no-watch", "test:web:cover": "cd frontend && npx ng test --no-watch --coverage", "test:web:watch": "cd frontend && npx ng test", "report": "node scripts/open-report.mjs", "report:pdf": "cd e2e && node scripts/report-pdf.mjs", "report:pdf:summary": "cd e2e && node scripts/report-pdf.mjs --summary", "report:playwright": "node scripts/open-report.mjs playwright", "report:serve": "node scripts/serve-report.mjs", "lint": "npm run lint:go && npm run lint:e2e", "lint:e2e": "cd e2e && npx tsc --noEmit", "lint:go": "cd backend && go vet ./...", "docs:tests": "node scripts/test-catalog.mjs", "docs:tests:check": "node scripts/test-catalog.mjs --check", "build": "npm run build:go && npm run build:web", "build:go": "cd backend && go build -o bin/api ./cmd/api", "build:web": "cd frontend && npx ng build", "setup": "npm run setup:web && npm run setup:e2e", "setup:e2e": "cd e2e && npm install && npx playwright install chromium", "setup:web": "cd frontend && npm install", "db:create": "node scripts/db.mjs create", "db:migrate": "node scripts/db.mjs migrate", "db:reset": "node scripts/db.mjs reset", "db:test": "node scripts/db.mjs test-db", "start:api": "cd backend && go run ./cmd/api", "start:web": "cd frontend && npm start", "qa": "node scripts/qa-tool.mjs", "qa:index": "node scripts/qa-tool.mjs index", "qa:list": "node scripts/qa-tool.mjs list", "qa:ui": "node scripts/qa-ui.mjs" } }