{ "name": "auto-tournament", "version": "3.0.16", "description": "Web app for running CS2 tournaments, with CS2 as the built-in game module", "repository": { "type": "git", "url": "https://github.com/Auto-Tournament/auto-tournament.git" }, "homepage": "https://docs.autotournament.gg", "bugs": { "url": "https://github.com/Auto-Tournament/auto-tournament/issues" }, "private": true, "workspaces": [ "api", "client" ], "main": "api/dist/index.js", "scripts": { "api:dev": "yarn workspace @auto-tournament/api dev", "api:build": "yarn workspace @auto-tournament/api build", "api:start": "yarn workspace @auto-tournament/api start", "client:dev": "yarn workspace @auto-tournament/client dev", "client:dev:host": "yarn workspace @auto-tournament/client dev:host", "client:build": "yarn workspace @auto-tournament/client build", "dev": "concurrently \"yarn dev:server\" \"yarn client:dev:host\" --names \"API,CLIENT\" --prefix-colors \"cyan,magenta\"", "dev:localhost": "concurrently \"yarn dev:server\" \"yarn client:dev\" --names \"API,CLIENT\" --prefix-colors \"cyan,magenta\"", "dev:server": "bash scripts/dev-server-with-logs.sh", "dev:client": "yarn client:dev", "dev:client:host": "yarn client:dev:host", "dev:debug": "LOG_LEVEL=debug tsx watch api/src/index.ts", "build": "yarn sync:version && yarn build:server && yarn build:client", "build:server": "yarn api:build", "build:server:tsc": "tsc -p api/tsconfig.json", "build:client": "yarn client:build", "sync:version": "bash scripts/sync-version.sh", "start": "yarn api:start", "lint": "eslint .", "format": "bash scripts/format-changed.sh", "format:check": "bash scripts/format-changed.sh --check", "lint:fix": "eslint . --fix", "check:tournament-literals": "node scripts/check-tournament-literals.mjs", "typecheck": "tsc -p api/tsconfig.json --noEmit && tsc -p client/tsconfig.json --noEmit", "typecheck:ratchet": "node scripts/typecheck-ratchet.mjs", "typecheck:baseline": "node scripts/typecheck-ratchet.mjs --update", "reset-admin": "tsx api/src/cli/resetAdmin.ts", "docs:api": "tsx scripts/generate-api-reference.ts", "docs:api:check": "tsx scripts/generate-api-reference.ts --check", "db": "docker ps --format '{{.Names}}' | grep -q '^auto-tournament-postgres$' && echo '✅ PostgreSQL container is already running' || (docker ps -a --format '{{.Names}}' | grep -q '^auto-tournament-postgres$' && (docker start auto-tournament-postgres && echo '✅ Started existing PostgreSQL container') || (docker run -d --name auto-tournament-postgres -e POSTGRES_USER=postgres -e POSTGRES_PASSWORD=postgres -e POSTGRES_DB=auto_tournament -p 5432:5432 postgres:16-alpine && echo '✅ Created and started PostgreSQL container'))", "db:stop": "docker stop auto-tournament-postgres 2>/dev/null && echo '✅ Stopped PostgreSQL container' || echo '⚠️ PostgreSQL container not running'", "db:restart": "yarn db:stop && sleep 1 && yarn db", "db:remove": "docker rm -f auto-tournament-postgres 2>/dev/null && echo '✅ Removed PostgreSQL container' || echo '⚠️ PostgreSQL container not found'", "db:reset": "yarn db:remove && yarn db", "test": "bash scripts/test-e2e-sharded.sh", "test:upgrade": "tsx scripts/test-upgrade.ts", "module:release": "tsx scripts/module-release.ts", "test:single": "bash scripts/test-e2e-all.sh", "test:sharded": "bash scripts/test-e2e-sharded.sh 10", "test:sharded:3": "bash scripts/test-e2e-sharded.sh 3", "test:sharded:5": "bash scripts/test-e2e-sharded.sh 5", "test:sharded:10": "bash scripts/test-e2e-sharded.sh 10", "test:manual": "playwright test -c tests/playwright.config.ts", "test:ui": "bash scripts/test-e2e-all.sh --ui", "test:api": "playwright test -c tests/playwright.config.ts tests/api", "test:api:manual": "playwright test -c tests/playwright.config.ts tests/api --ui", "test:ui:manual": "playwright test -c tests/playwright.config.ts tests/ui --ui", "test:veto": "playwright test -c tests/playwright.config.ts --grep @veto", "test:cs-major": "playwright test -c tests/playwright.config.ts --grep @cs-major", "test:report": "playwright show-report -c tests/playwright.config.ts", "test:install": "playwright install --with-deps", "screenshot:generate": "tsx scripts/generate-screenshots.ts", "screenshot": "bash scripts/generate-screenshots-with-docker.sh", "screenshot:keep": "bash scripts/generate-screenshots-with-docker.sh --keep-running", "docker:up": "docker compose --env-file .env -f docker/docker-compose.yml up -d --build", "docker:down": "docker compose --env-file .env -f docker/docker-compose.yml down", "docker:logs": "docker compose --env-file .env -f docker/docker-compose.yml logs -f", "docker:local:up": "docker compose --env-file .env -f docker/docker-compose.local.yml up -d --build", "docker:local:up:fast": "docker compose --env-file .env -f docker/docker-compose.local.yml up -d", "docker:local:down": "docker compose --env-file .env -f docker/docker-compose.local.yml down", "docker:local:down:clean": "docker compose --env-file .env -f docker/docker-compose.local.yml down --rmi local", "docker:local:restart": "yarn docker:local:down && yarn docker:local:up", "docker:local:logs": "docker compose --env-file .env -f docker/docker-compose.local.yml logs -f", "docker:local:rebuild": "docker image prune -f && docker compose --env-file .env -f docker/docker-compose.local.yml up -d --build --no-deps auto-tournament && docker image prune -f", "docker:rebuild": "docker image prune -f && docker compose --env-file .env -f docker/docker-compose.yml up -d --build --no-deps auto-tournament && docker image prune -f", "docker:restart": "yarn docker:down || true && yarn docker:local:down || true && docker rm -f auto-tournament-dev auto-tournament 2>/dev/null || true" }, "keywords": [ "cs2", "tournament", "express", "typescript" ], "author": "", "license": "SEE LICENSE IN LICENSE", "devDependencies": { "@axe-core/playwright": "^4.13.0", "@playwright/test": "^1.56.1", "@types/cheerio": "^1.0.0", "@types/cors": "^2.8.17", "@types/express": "^4.17.21", "@types/node": "^20.10.5", "@types/node-fetch": "^2.6.13", "@types/pg": "^8.15.6", "@types/react": "^18.2.0", "@types/react-dom": "^18.2.0", "@types/semver": "^7.5.8", "@types/swagger-jsdoc": "^6.0.4", "@types/swagger-ui-express": "^4.1.8", "@types/ws": "^8.5.12", "@typescript-eslint/eslint-plugin": "^8.46.2", "@typescript-eslint/parser": "^8.46.2", "cheerio": "^1.1.2", "concurrently": "^9.2.1", "esbuild": "^0.27.1", "eslint": "^9.39.0", "eslint-plugin-react": "^7.37.5", "eslint-plugin-react-compiler": "^19.1.0-rc.2", "eslint-plugin-react-hooks": "^7.0.1", "pino-pretty": "^13.1.2", "pixelmatch": "^7.1.0", "playwright": "^1.56.1", "pngjs": "^7.0.0", "react": "^18.2.0", "react-dom": "^18.2.0", "react-router-dom": "^6.21.0", "tsx": "^4.7.0", "typescript": "^5.3.3" }, "dependencies": { "@faker-js/faker": "^10.1.0", "unique-names-generator": "^4.7.1" } }