{
  "name": "fabric",
  "description": "Object model for HTML5 canvas, and SVG-to-canvas parser. Backed by jsdom and node-canvas.",
  "homepage": "http://fabricjs.com/",
  "version": "7.3.1",
  "author": "Juriy Zaytsev <kangax@gmail.com>",
  "contributors": [
    {
      "name": "Andrea Bogazzi",
      "email": "andreabogazzi79@gmail.com",
      "url": "https://github.com/asturur"
    },
    {
      "name": "Shachar Nencel",
      "email": "shacharnen@gmail.com",
      "url": "https://github.com/ShaMan123"
    },
    {
      "name": "Steve Eberhardt",
      "email": "melchiar2@gmail.com",
      "url": "https://github.com/melchiar"
    }
  ],
  "keywords": [
    "canvas",
    "graphic",
    "graphics",
    "SVG",
    "node-canvas",
    "parser",
    "HTML5",
    "object model"
  ],
  "repository": {
    "type": "git",
    "url": "git+https://github.com/fabricjs/fabric.js.git"
  },
  "bugs": {
    "url": "https://github.com/fabricjs/fabric.js/issues"
  },
  "license": "MIT",
  "scripts": {
    "docs": "typedoc",
    "cli": "node ./scripts/index.mjs",
    "sandboxscript": "node ./scripts/sandbox.mjs",
    "typecheck": "tsc -p ./tsconfig.build.json --noEmit && tsc -p ./tsconfig-extensions.json --noEmit",
    "build": "npm run cli -- build",
    "build:fast": "npm run build -- -f",
    "dev": "npm run cli -- dev",
    "start": "npm run sandboxscript -- start",
    "export": "npm run cli -- website export",
    "test:vitest": "vitest --run --project unit-node",
    "test:vitest:chromium": "vitest --run --project unit-chromium",
    "test:vitest:firefox": "vitest --run --project unit-firefox",
    "test:vitest:all": "vitest --run",
    "test:vitest:coverage": "vitest --run --coverage --project unit-node",
    "test:vitest:coverage:watch": "npm run test:vitest --coverage=true",
    "test:e2e": "npm run playwright:typecheck && playwright test --",
    "playwright:typecheck": "tsc -p ./e2e/tsconfig.json --noEmit",
    "sandbox": "npm run sandboxscript -- sandbox",
    "local-server": "serve ./ -l tcp://localhost:8080",
    "lint": "eslint src extensions --fix",
    "prettier:check": "oxfmt --check .",
    "prettier:write": "oxfmt .",
    "prepare": "husky install"
  },
  "devDependencies": {
    "@eslint/js": "^9.37.0",
    "@playwright/test": "^1.58.2",
    "@rollup/plugin-terser": "^1.0.0",
    "@types/jsdom": "^21.1.7",
    "@types/micromatch": "^4.0.10",
    "@types/node": "^24.7.0",
    "@vitest/browser-playwright": "4.1.3",
    "@vitest/coverage-v8": "4.1.3",
    "@vitest/ui": "4.1.3",
    "commander": "^14.0.3",
    "es-toolkit": "1.45.1",
    "eslint-config-prettier": "^10.1.8",
    "husky": "^9.1.7",
    "inquirer": "^13.3.2",
    "lint-staged": "^16.4.0",
    "micromatch": "^4.0.8",
    "oxfmt": "^0.42.0",
    "ps-list": "^9.0.0",
    "rolldown": "^1.0.0-rc.12",
    "serve": "^14.2.6",
    "tsc-files": "^1.1.4",
    "typescript": "^6.0.2",
    "typescript-eslint": "^8.58.0",
    "vitest": "4.1.3",
    "westures": "^1.1.1"
  },
  "engines": {
    "node": ">=20.0.0"
  },
  "overrides": {
    "canvas": {
      "canvas": "3.2.0"
    }
  },
  "module": "./dist/index.mjs",
  "types": "./dist/index.d.ts",
  "typesVersions": {
    ">=4.2": {
      "*": [
        "dist/index.d.ts"
      ],
      "node": [
        "dist/index.node.d.ts"
      ]
    }
  },
  "sideEffects": false,
  "exports": {
    ".": {
      "types": "./dist/index.d.ts",
      "import": "./dist/index.min.mjs",
      "require": "./dist/index.min.js",
      "default": "./dist/index.min.js"
    },
    "./es": {
      "types": "./dist/index.d.ts",
      "import": "./dist/fabric.min.mjs",
      "require": null,
      "default": null
    },
    "./node": {
      "node": "./dist/index.node.cjs",
      "types": "./dist/index.node.d.ts",
      "import": "./dist/index.node.mjs",
      "require": "./dist/index.node.cjs",
      "default": "./dist/index.node.cjs"
    },
    "./extensions": {
      "node": "./dist-extensions/index.mjs",
      "types": "./dist-extensions/extensions/index.d.ts",
      "import": "./dist-extensions/index.mjs",
      "require": null,
      "default": "./dist-extensions/fabric-extensions.min.js"
    }
  },
  "optionalDependencies": {
    "canvas": "^3.2.0",
    "jsdom": "^26.1.0"
  },
  "lint-staged": {
    "*.{js,md,css,ts,tsx,jsx,json}": "eslint --fix",
    "*.{js,css,md,ts,tsx,jsx,json}": "oxfmt --no-error-on-unmatched-pattern",
    "**/*.ts !(**/*.spec.ts) !(**/*.test.ts) !(vitest*.ts)": "tsc-files --noEmit"
  }
}
