UNPKG

boardgame.io

Version:
212 lines (211 loc) 6.64 kB
{ "name": "boardgame.io", "version": "0.50.2", "description": "library for turn-based games", "repository": "https://github.com/boardgameio/boardgame.io", "scripts": { "prestart": "run-p examples:install build", "start": "run-p dev:server dev:client", "predev": "npm run examples:install", "dev": "run-p build:watch dev:server dev:client", "dev:client": "node scripts/dev-client.js", "dev:server": "cross-env NODE_ENV=development nodemon -w src -w examples -e js,ts --exec babel-node --extensions \".ts,.js\" --ignore \"src/**/*.test.ts\" --presets @babel/preset-env examples/react-web/server.js", "build": "cross-env BABEL_ENV=rollup rollup --config rollup.config.js --silent", "build:watch": "cross-env BABEL_ENV=rollup rollup -w --config rollup.config.js", "benchmark": "babel-node --extensions .ts,.js --presets @babel/preset-env,@babel/preset-typescript benchmark/index.js", "docs": "docsify serve docs", "examples": "npm run start", "examples:install": "node scripts/install-examples.js", "pretest": "npm run lint", "test": "cross-env NODE_ENV=test jest", "test:watch": "npm test -- --watch", "test:coverage": "npm test -- --coverage --collectCoverageFrom=\"src/**\"", "test:coveralls": "coveralls < coverage/lcov.info", "test:integration": "node ./scripts/integration.js", "ts": "tsc --noEmit", "ts:watch": "tsc --noEmit --watch", "lint": "eslint .", "lint:fix": "eslint --fix .", "prepublishOnly": "npm run clean", "proxydirs": "node scripts/proxy-dirs.js", "prepack": "run-s build proxydirs", "postpack": "npm run clean", "prettier": "prettier --write \"{examples,src,benchmark}/**/*.{ts,tsx,js,jsx,css,md}\"", "changelog": "node ./scripts/changelog.js", "clean": "node ./scripts/clean.js" }, "sideEffects": false, "main": "dist/boardgameio.js", "unpkg": "dist/boardgameio.min.js", "module": "dist/boardgameio.es.js", "types": "dist/types/src/types.d.ts", "files": [ "src", "dist/boardgameio.js", "dist/boardgameio.min.js", "dist/boardgameio.es.js", "dist/esm", "dist/cjs", "dist/types", "client", "core", "debug", "react", "react-native", "server", "ai", "plugins", "master", "multiplayer", "internal", "testing" ], "keywords": [ "board games", "card games", "tabletop games", "game engine" ], "engines": { "node": ">=10.0", "npm": ">=6.0" }, "author": "nicolodavis@gmail.com", "license": "MIT", "funding": [ "https://github.com/boardgameio/boardgame.io?sponsor=1", { "type": "opencollective", "url": "https://opencollective.com/boardgameio" } ], "devDependencies": { "@babel/cli": "^7.16.0", "@babel/core": "^7.16.0", "@babel/node": "^7.16.0", "@babel/plugin-proposal-class-properties": "^7.16.0", "@babel/plugin-proposal-object-rest-spread": "^7.16.0", "@babel/plugin-transform-modules-commonjs": "^7.16.0", "@babel/preset-env": "^7.16.0", "@babel/preset-react": "^7.16.0", "@babel/preset-typescript": "^7.16.0", "@testing-library/jest-dom": "^5.14.1", "@testing-library/svelte": "^3.0.3", "@types/enzyme": "^3.10.9", "@types/jest": "^27.0.1", "@types/koa__cors": "^3.0.3", "@types/node": "^14.0.24", "@types/react": "^16.14.11", "@types/react-dom": "^16.9.14", "@types/supertest": "^2.0.11", "@typescript-eslint/eslint-plugin": "^4.29.3", "@typescript-eslint/parser": "^4.29.3", "babel-plugin-module-resolver": "^4.1.0", "benchmark": "^2.1.4", "cross-env": "^7.0.3", "docsify-cli": "^4.4.4", "enzyme": "^3.11.0", "enzyme-adapter-react-16": "^1.15.6", "eslint": "^7.31.0", "eslint-config-prettier": "^8.3.0", "eslint-plugin-jest": "^24.4.0", "eslint-plugin-prettier": "^3.4.0", "eslint-plugin-react": "^7.24.0", "eslint-plugin-unicorn": "^30.0.0", "husky": "^4.3.8", "identity-obj-proxy": "^3.0.0", "jest": "^27.1.0", "jest-date-mock": "^1.0.8", "jest-transform-svelte": "^2.1.1", "lint-staged": "^10.5.4", "node-persist": "^3.1.0", "nodemon": "^2.0.12", "npm-run-all": "^4.1.5", "prettier": "^2.3.2", "raf": "^3.4.1", "react": "^16.14.0", "react-dom": "^16.14.0", "rollup": "^1.0.2", "rollup-plugin-babel": "^4.2.0", "rollup-plugin-commonjs": "^9.2.0", "rollup-plugin-filesize": "^6.0.0", "rollup-plugin-node-builtins": "^2.1.2", "rollup-plugin-node-resolve": "^4.0.0", "rollup-plugin-replace": "^2.1.0", "rollup-plugin-svelte": "^6.1.1", "rollup-plugin-terser": "^5.3.0", "rollup-plugin-typescript2": "^0.22.0", "shelljs": "^0.8.4", "supertest": "^3.1.0", "svelte-icons": "^2.1.0", "tempy": "^1.0.1", "ts-jest": "^27.0.5", "ts-transformer-imports": "^0.4.3", "ttypescript": "^1.5.12", "typescript": "^3.8.2" }, "dependencies": { "@koa/cors": "^3.1.0", "@koa/router": "^10.1.1", "@types/koa": "^2.13.4", "@types/koa__router": "^8.0.8", "flatted": "^3.2.1", "immer": "^9.0.5", "koa": "^2.13.3", "koa-body": "^5.0.0", "koa-socket-2": "^2.0.0", "lodash.isplainobject": "^4.0.6", "nanoid": "^3.1.30", "p-queue": "^6.6.2", "prop-types": "^15.5.10", "react-cookies": "^0.1.0", "redux": "^4.1.0", "rfc6902": "^5.0.0", "setimmediate": "^1.0.5", "socket.io": "^4.5.0", "socket.io-client": "^4.1.3", "svelte": "^3.41.0", "svelte-json-tree-auto": "^0.1.0", "ts-toolbelt": "^6.3.6" }, "jest": { "preset": "ts-jest/presets/js-with-babel", "testEnvironment": "jsdom", "moduleNameMapper": { "\\.(css)$": "identity-obj-proxy", "\\.(svg)$": "<rootDir>/.empty_module.js", "svelte-json-tree-auto": "<rootDir>/src/client/debug/tests/JSONTree.mock.svelte" }, "coveragePathIgnorePatterns": [ "/node_modules/", "src/client/transport/dummy", "src/client/debug/.*", "src/types.ts" ], "setupFiles": [ "raf/polyfill", "jest-date-mock" ], "setupFilesAfterEnv": [ "@testing-library/jest-dom/extend-expect" ], "transform": { "^.+\\.svelte$": "jest-transform-svelte" }, "transformIgnorePatterns": [ "node_modules/(?!(boardgame.io|flatted|svelte-icons)/)" ], "testPathIgnorePatterns": [ "examples/", "integration/", "node_modules/", ".npm/" ] }, "husky": { "hooks": { "pre-commit": "lint-staged", "pre-push": "npm run test:coverage" } } }