{
  "name": "@vscubing/cubing",
  "version": "0.63.1-vscubing.1",
  "description": "A collection of JavaScript cubing libraries.",
  "author": "The js.cubing.net team",
  "license": "MPL-2.0 OR GPL-3.0-or-later",
  "repository": {
    "type": "git",
    "url": "git+https://github.com/vscubing/cubing.js.git"
  },
  "engines-comment": "`node` 22.3.0 and `bun` 1.2.7 are needed for `globalThis.process.getBuiltinModule(…)`, which helps bundlers avoid thinking our `node` shims require packages from a package manager.",
  "engines": {
    "node": ">=22.3.0",
    "bun": ">=1.3.0"
  },
  "type": "module",
  "exports": {
    "./alg": {
      "types": "./dist/lib/cubing/alg/index.d.ts",
      "import": "./dist/lib/cubing/alg/index.js"
    },
    "./bluetooth": {
      "types": "./dist/lib/cubing/bluetooth/index.d.ts",
      "import": "./dist/lib/cubing/bluetooth/index.js"
    },
    "./kpuzzle": {
      "types": "./dist/lib/cubing/kpuzzle/index.d.ts",
      "import": "./dist/lib/cubing/kpuzzle/index.js"
    },
    "./notation": {
      "types": "./dist/lib/cubing/notation/index.d.ts",
      "import": "./dist/lib/cubing/notation/index.js"
    },
    "./protocol": {
      "types": "./dist/lib/cubing/protocol/index.d.ts",
      "import": "./dist/lib/cubing/protocol/index.js"
    },
    "./puzzle-geometry": {
      "types": "./dist/lib/cubing/puzzle-geometry/index.d.ts",
      "import": "./dist/lib/cubing/puzzle-geometry/index.js"
    },
    "./puzzles": {
      "types": "./dist/lib/cubing/puzzles/index.d.ts",
      "import": "./dist/lib/cubing/puzzles/index.js"
    },
    "./scramble": {
      "types": "./dist/lib/cubing/scramble/index.d.ts",
      "import": "./dist/lib/cubing/scramble/index.js"
    },
    "./search": {
      "types": "./dist/lib/cubing/search/index.d.ts",
      "import": "./dist/lib/cubing/search/index.js"
    },
    "./stream": {
      "types": "./dist/lib/cubing/stream/index.d.ts",
      "import": "./dist/lib/cubing/stream/index.js"
    },
    "./twisty": {
      "types": "./dist/lib/cubing/twisty/index.d.ts",
      "import": "./dist/lib/cubing/twisty/index.js"
    }
  },
  "bin": {
    "scramble": "dist/bin/scramble.js"
  },
  "dependencies": {
    "@optique/core": ">=0.9.1",
    "@optique/run": ">=0.9.1",
    "@types/three": "^0.169.0",
    "@types/web-bluetooth": "^0.0.20",
    "random-uint-below": "v3.3.0",
    "three": "^0.170.0",
    "type-fest": "^5.2.0"
  },
  "devDependencies": {
    "@biomejs/biome": "^2.3.11",
    "@cubing/deploy": ">=0.4.10",
    "@cubing/dev-config": ">=0.9.2",
    "@esm-bundle/chai": "^4.3.4-fix.0",
    "@schemastore/package": "^0.0.10",
    "@types/bun": "^1.3.5",
    "@types/chai": "^5.0.0",
    "@types/dom-speech-recognition": "^0.0.4",
    "@types/mocha": "^10.0.8",
    "@types/node": "^25.0.3",
    "@web/dev-server-esbuild": "^1.0.2",
    "@web/test-runner": "^0.19.0",
    "@web/test-runner-playwright": "^0.11.0",
    "barely-a-dev-server": ">=0.8.3",
    "bun-dx": ">=0.1.3",
    "chai": "^5.1.1",
    "esbuild": "^0.25.0",
    "jszip": "^3.10.1",
    "mocha": "^10.7.3",
    "path-class": ">=0.11.0",
    "playwright": "^1.58.0",
    "printable-shell-command": "^4.0.3",
    "tsup": "^8.3.0",
    "typedoc": "^0.28.10",
    "typescript": "5.9.3",
    "typescript-json-schema": "^0.67.1"
  },
  "overrides": {
    "typescript": "5.9.3"
  },
  "files": [
    "./dist/bin/",
    "./dist/lib/",
    "./experimental-json-schema",
    "./*/index.d.ts"
  ],
  "scripts": {
    "build": "make build",
    "dev": "make dev",
    "prepublishOnly": "make prepublishOnly",
    "postpublish": "make postpublish"
  },
  "keywords": [
    "cubing",
    "speedcubing",
    "puzzle",
    "visualization",
    "kpuzzle",
    "bluetooth",
    "rubik",
    "rubik's",
    "Twizzle",
    "scramble",
    "scrambles",
    "alg",
    "algs"
  ],
  "@cubing/deploy": {
    "https://experiments.cubing.net/cubing.js/": {
      "username": "cubing_deploy",
      "fromLocalDir": "./dist/sites/experiments.cubing.net/cubing.js/"
    }
  },
  "$schema": "./node_modules/@cubing/deploy/config-schema.package.json"
}
