{ "name": "sample-tictactoe", "version": "1.0.0", "scripts": { "build": "npm run build:clean && npm run build:only && npm run build:static", "build:clean": "rimraf dist", "build:only": "tsc --project tsconfig.build.json", "build:static": "copyfiles -u 1 \"src/frontend/static/**/*\" dist", "build-and-start": "npm run build && npm run start", "check-and-start": "npm run prerelease && npm run build-and-start", "lint": "eslint src", "prerelease": "npm run lint && npm run typecheck && npm run test", "start": "node ./dist/server.js", "test": "tap", "typecheck": "tsc --project tsconfig.json" }, "author": "Inga", "homepage": "https://oomza.cutegay.software/inga-lovinde/sample-tictactoe", "license": "CNPLv7", "type": "module", "devDependencies": { "@eslint/js": "^9.15.0", "@tsconfig/strictest": "^2.0.5", "@types/body-parser": "^1.19.5", "@types/eslint__js": "^8.42.3", "@types/express": "^5.0.0", "copyfiles": "^2.4.1", "eslint": "^9.15.0", "eslint-config-prettier": "^9.1.0", "eslint-plugin-prettier": "^5.2.1", "prettier": "^3.3.3", "rimraf": "^6.0.1", "tap": "^21.0.1", "typed-query-selector": "^2.12.0", "typescript": "^5.7.2", "typescript-eslint": "^8.16.0" }, "dependencies": { "body-parser": "^1.20.3", "express": "^4.21.1", "preact": "^10.24.3", "preact-render-to-string": "^6.5.11" } }