{
  "name": "pxt-core",
  "version": "12.3.5",
  "description": "Microsoft MakeCode provides Blocks / JavaScript / Python tools and editors",
  "keywords": [
    "TypeScript",
    "JavaScript",
    "Blockly",
    "education",
    "microbit",
    "Adafruit",
    "Arcade",
    "Python",
    "pxt",
    "Microsoft",
    "Microsoft MakeCode"
  ],
  "repository": {
    "type": "git",
    "url": "git+https://github.com/microsoft/pxt.git"
  },
  "author": "Microsoft Corporation",
  "license": "MIT",
  "homepage": "https://github.com/microsoft/pxt#readme",
  "files": [
    "README.md",
    "built/*.js",
    "built/**/*.d.ts",
    "built/pxt-common.json",
    "built/webapps-config.json",
    "built/web/fonts",
    "built/web/*.js",
    "built/web/*.css",
    "built/web/*.html",
    "built/web/vs/editor/editor.main.js",
    "built/web/vs/language/typescript/lib/*.js",
    "built/web/vs/language/typescript/src/*.js",
    "built/web/*/css/*.css",
    "built/web/*/js/*.js",
    "pxtcompiler/ext-typescript/lib/lib.d.ts",
    "pxtcompiler/ext-typescript/lib/typescript.js",
    "pxtcompiler/ext-typescript/lib/typescriptServices.d.ts",
    "libs/lang-test0/*.ts",
    "libs/lang-test0/pxt.json",
    "pxtarget.json",
    "webapp/public",
    "typings/**",
    "localtypings/**",
    "tests/blocks-test/karma.conf.js",
    "built/tests/blocksrunner.js",
    "built/tests/blockssetup.js",
    "docfiles",
    "theme",
    "common-docs",
    "react-common"
  ],
  "main": "built/pxt.js",
  "engines": {
    "node": ">=18.0.0",
    "npm": ">=8.0.0"
  },
  "dependencies": {
    "@blockly/field-grid-dropdown": "6.0.4",
    "@blockly/keyboard-navigation": "3.0.3",
    "@blockly/plugin-workspace-search": "10.1.2",
    "@crowdin/crowdin-api-client": "^1.33.0",
    "@fortawesome/fontawesome-free": "^5.15.4",
    "@microsoft/applicationinsights-web": "^2.8.11",
    "@microsoft/immersive-reader-sdk": "1.1.0",
    "@types/audioworklet": "^0.0.75",
    "@types/diff-match-patch": "^1.0.32",
    "@zip.js/zip.js": "2.4.20",
    "adm-zip": "^0.5.12",
    "axios": "^1.12.2",
    "blockly": "12.3.1",
    "browserify": "17.0.0",
    "chai": "^3.5.0",
    "chalk": "^4.1.2",
    "cssnano": "7.1.1",
    "dashjs": "^4.4.0",
    "diff-match-patch": "^1.0.5",
    "dompurify": "3.3.0",
    "faye-websocket": "0.11.1",
    "karma": "6.4.4",
    "karma-chai": "0.1.0",
    "karma-chrome-launcher": "3.2.0",
    "karma-mocha": "2.0.1",
    "less": "3.13.1",
    "lzma": "2.3.2",
    "marked": "17.0.0",
    "mocha": "10.8.2",
    "pngjs": "3.4.0",
    "postcss": "8.5.6",
    "promise.prototype.finally": "^3.1.2",
    "puppeteer": "23.11.1",
    "rimraf": "2.5.4",
    "rtlcss": "4.3.0",
    "sanitize-html": "2.17.0",
    "semantic-ui-less": "2.4.1",
    "terser": "5.44.0"
  },
  "lazyDependencies": {
    "node-hid": "^0.7.2",
    "webusb": "^1.1.1"
  },
  "devDependencies": {
    "@microsoft/eslint-plugin-sdl": "^0.1.5",
    "@types/adm-zip": "^0.5.5",
    "@types/chai": "4.0.6",
    "@types/fuse": "2.5.2",
    "@types/highlight.js": "9.12.2",
    "@types/jquery": "3.3.29",
    "@types/mocha": "^10.0.10",
    "@types/node": "10.14.2",
    "@types/react": "17.0.50",
    "@types/react-dom": "17.0.17",
    "@types/react-modal": "3.13.1",
    "@types/react-redux": "7.1.24",
    "@types/react-tooltip": "3.3.6",
    "@types/resize-observer-browser": "^0.1.5",
    "@types/web-bluetooth": "0.0.4",
    "@typescript-eslint/eslint-plugin": "^4.20.0",
    "@typescript-eslint/parser": "^4.20.0",
    "@vusion/webfonts-generator": "0.8.0",
    "crypto-js": "4.2.0",
    "envify": "4.1.0",
    "eslint": "^7.23.0",
    "eslint-plugin-import": "^2.22.1",
    "eslint-plugin-jsx-a11y": "^6.4.1",
    "eslint-plugin-react": "^7.23.1",
    "fuse.js": "3.2.0",
    "gulp": "5.0.1",
    "gulp-cli": "3.1.0",
    "gulp-concat": "2.6.1",
    "gulp-replace": "1.1.4",
    "gulp-typescript": "5.0.1",
    "highlight.js": "11.11.1",
    "jquery": "3.5.0",
    "merge-stream": "2.0.0",
    "monaco-editor": "0.24.0",
    "pouchdb": "7.3.1",
    "pouchdb-adapter-memory": "7.3.1",
    "react": "17.0.2",
    "react-dom": "17.0.2",
    "react-modal": "3.15.1",
    "react-redux": "7.2.9",
    "react-tooltip": "3.9.0",
    "redux": "4.2.0",
    "smoothie": "1.36.1",
    "typescript": "4.8.3",
    "yargs": "^17.7.2"
  },
  "overrides": {
    "combine-source-map": {
      "source-map": "0.4.4"
    },
    "sha.js": "2.4.12",
    "cipher-base": "1.0.7",
    "pbkdf2": "3.1.5",
    "elliptic": "6.6.1",
    "tar-fs": "3.1.1",
    "terser": "5.44.0"
  },
  "scripts": {
    "build": "gulp",
    "test": "gulp travis",
    "test:publish": "gulp travis --publish",
    "clean": "gulp clean",
    "lint": "gulp lint",
    "start": "gulp",
    "test:all": "gulp test",
    "test:decompiler": "gulp testdecompiler",
    "test:decompiler-errors": "gulp testdecompilererrors",
    "test:err": "gulp testerr",
    "test:fmt": "gulp testfmt",
    "test:lang": "gulp testlang",
    "test:tutorials": "gulp testtutorials",
    "update": "gulp update",
    "watch-streamer": "cd docs/static/streamer && tsc -t es6 --watch",
    "prepare": "node ./scripts/npm-prepare.js",
    "compile-aw": "gh aw compile --strict"
  }
}
