{
  "name": "threejs-scenes",
  "version": "3.0.0",
  "publishConfig": {
    "registry": "https://registry.npmjs.org"
  },
  "description": "Strictly-typed factories and interfaces for building production-quality vanilla three.js (WebGL2) scenes: renderer/loop/dispose scaffolding, cameras, instancing, shaders, lighting, particles, post-processing, voxels, infinite worlds, and the context-injection module architecture distilled from a shipping project.",
  "type": "module",
  "main": "./dist/index.js",
  "module": "./dist/index.js",
  "types": "./dist/index.d.ts",
  "exports": {
    ".": {
      "types": "./dist/index.d.ts",
      "import": "./dist/index.js"
    },
    "./core": {
      "types": "./dist/core/index.d.ts",
      "import": "./dist/core/index.js"
    },
    "./primitives": {
      "types": "./dist/primitives/index.d.ts",
      "import": "./dist/primitives/index.js"
    },
    "./raster": {
      "types": "./dist/raster/index.d.ts",
      "import": "./dist/raster/index.js"
    },
    "./compose": {
      "types": "./dist/compose/index.d.ts",
      "import": "./dist/compose/index.js"
    },
    "./state": {
      "types": "./dist/state/index.d.ts",
      "import": "./dist/state/index.js"
    },
    "./scaffold": {
      "types": "./dist/scaffold/index.d.ts",
      "import": "./dist/scaffold/index.js"
    },
    "./webgpu": {
      "types": "./dist/post/webgpu/index.d.ts",
      "import": "./dist/post/webgpu/index.js"
    },
    "./jsx": {
      "types": "./dist/jsx/index.d.ts",
      "import": "./dist/jsx/index.js"
    },
    "./jsx/jsx-runtime": {
      "types": "./dist/jsx/jsx-runtime.d.ts",
      "import": "./dist/jsx/jsx-runtime.js"
    },
    "./lib/*": "./lib/*.ts",
    "./lib": "./lib/index.ts",
    "./lib/core": "./lib/core/index.ts",
    "./lib/primitives": "./lib/primitives/index.ts",
    "./lib/raster": "./lib/raster/index.ts",
    "./lib/compose": "./lib/compose/index.ts",
    "./lib/state": "./lib/state/index.ts",
    "./lib/scaffold": "./lib/scaffold/index.ts",
    "./lib/webgpu": "./lib/post/webgpu/index.ts",
    "./lib/jsx": "./lib/jsx/index.ts",
    "./lib/jsx/jsx-runtime": "./lib/jsx/jsx-runtime.ts"
  },
  "files": [
    "dist",
    "lib",
    "!lib/__smoke__.ts",
    "readme.md"
  ],
  "sideEffects": false,
  "directories": {
    "lib": "lib"
  },
  "scripts": {
    "dev": "vite --host 0.0.0.0",
    "build": "rm -rf dist && tsc -p tsconfig.json && bun run copy:lib && bun run docs && bun run site:build",
    "copy:lib": "bun run scripts/copy-lib.ts",
    "docs": "bun run scripts/generate-docs.ts",
    "site:build": "vite build",
    "site:preview": "vite preview --host 0.0.0.0",
    "package:skill": "bun run build && bun run scripts/package-skill.ts",
    "version": "bun run scripts/sync-version.ts && git add skill",
    "docs:query": "node skill/scripts/query-threejs-docs.js",
    "typecheck": "tsc --noEmit -p tsconfig.json",
    "lint": "eslint lib",
    "smoke": "bun run lib/__smoke__.ts",
    "test": "bun run typecheck && bun run smoke"
  },
  "repository": {
    "type": "git",
    "url": "git+https://github.com/tuomashatakka/threejs-scenes-skill.git"
  },
  "keywords": [
    "threejs",
    "three",
    "webgl",
    "webgl2",
    "3d",
    "scene",
    "instancing",
    "post-processing",
    "voxels",
    "procedural",
    "shaders",
    "factories"
  ],
  "author": "Tuomas Hatakka",
  "license": "ISC",
  "bugs": {
    "url": "https://github.com/tuomashatakka/threejs-scenes-skill/issues"
  },
  "homepage": "https://github.com/tuomashatakka/threejs-scenes-skill#readme",
  "peerDependencies": {
    "three": ">=0.160.0"
  },
  "devDependencies": {
    "@tuomashatakka/eslint-config": "^4.0.1",
    "@types/three": "^0.184.1",
    "eslint": "^10.6.0",
    "three": "^0.184.0",
    "typescript": "^6.0.3",
    "vite": "^8.1.3"
  },
  "dependencies": {
    "@tuomashatakka/canvas-loop-framecapper": "^1.0.0"
  }
}
