{
  "name": "@vysmo/gl-core",
  "version": "0.5.0",
  "description": "Minimal WebGL2 plumbing — shader compile / link, uniform dispatch, texture cache, ping-pong framebuffer pool. Internal infra under @vysmo/transitions and @vysmo/effects.",
  "license": "MIT",
  "keywords": [
    "webgl",
    "webgl2",
    "shader",
    "glsl",
    "texture",
    "framebuffer",
    "fbo",
    "uniforms",
    "headless"
  ],
  "type": "module",
  "sideEffects": false,
  "main": "./dist/index.js",
  "module": "./src/index.ts",
  "types": "./dist/index.d.ts",
  "exports": {
    ".": {
      "types": "./dist/index.d.ts",
      "import": "./dist/index.js",
      "require": "./dist/index.cjs"
    }
  },
  "files": [
    "dist",
    "src",
    "README.md",
    "LICENSE"
  ],
  "devDependencies": {
    "@vitest/browser": "^3.2.4",
    "esbuild": "^0.28.0",
    "playwright": "^1.59.1",
    "typescript": "^5.6.3",
    "vitest": "^3.2.4"
  },
  "scripts": {
    "build": "tsc -p tsconfig.json && esbuild src/index.ts --bundle --format=cjs --platform=neutral --outfile=dist/index.cjs --external:@vysmo/* --external:react --external:react-dom --external:react/jsx-runtime",
    "typecheck": "tsc -p tsconfig.typecheck.json",
    "test": "vitest run && vitest run --config vitest.ssr.config.ts",
    "test:browser": "vitest run",
    "test:ssr": "vitest run --config vitest.ssr.config.ts",
    "test:watch": "vitest",
    "size": "node scripts/check-bundle-size.mjs"
  }
}