{
  "author": "Adrian de la Rosa <adrian@delarosab.me>",
  "bugs": {
    "url": "https://github.com/mormubis/pgn/issues"
  },
  "description": "Parse PGN (Portable Game Notation) chess games into structured JavaScript objects. Zero dependencies, strict TypeScript, no-throw API.",
  "devDependencies": {
    "@eslint/js": "^10.0.1",
    "@mliebelt/pgn-parser": "^1.4.15",
    "@types/node": "^25.5.0",
    "@typescript-eslint/parser": "^8.57.0",
    "@vitest/coverage-v8": "^4.1.0",
    "@vitest/eslint-plugin": "^1.6.12",
    "chess.js": "^1.4.0",
    "eslint": "^10.0.3",
    "eslint-config-prettier": "^10.1.8",
    "eslint-import-resolver-typescript": "^4.4.4",
    "eslint-plugin-import-x": "^4.16.2",
    "eslint-plugin-unicorn": "^63.0.0",
    "husky": "^9.1.7",
    "lint-staged": "^16.4.0",
    "peggy": "^5.1.0",
    "pgn-parser": "^2.2.1",
    "prettier": "^3.8.1",
    "tsdown": "^0.21.4",
    "typescript": "^5.9.3",
    "typescript-eslint": "^8.57.0",
    "vitest": "^4.1.0"
  },
  "engines": {
    "node": ">=20"
  },
  "exports": {
    ".": {
      "import": "./dist/index.js",
      "types": "./dist/index.d.ts"
    }
  },
  "files": [
    "/dist/",
    "LICENSE",
    "README.md",
    "CHANGELOG.md"
  ],
  "homepage": "https://github.com/mormubis/pgn#readme",
  "keywords": [
    "chess",
    "fide",
    "game",
    "no-dependencies",
    "notation",
    "parser",
    "pgn",
    "pgn-parser",
    "portable game notation",
    "typescript"
  ],
  "license": "MIT",
  "main": "dist/index.js",
  "name": "@echecs/pgn",
  "repository": {
    "type": "git",
    "url": "https://github.com/mormubis/pgn.git"
  },
  "type": "module",
  "types": "dist/index.d.ts",
  "version": "3.10.1",
  "scripts": {
    "bench": "vitest bench --run",
    "build": "pnpm run build:grammar && pnpm run build:entry",
    "build:entry": "tsdown",
    "build:grammar": "pnpm run grammar:compile",
    "format": "pnpm run format:ci --write",
    "format:ci": "prettier -l \"**/*.+(css|js|json|jsx|md|mjs|mts|ts|tsx|yml|yaml)\"",
    "grammar:compile": "peggy --format commonjs -o src/grammar.cjs src/grammar.pegjs",
    "grammar:test": "pnpm grammar:compile && peggy --format commonjs -o src/grammar.cjs --test-file ./test.pgn src/grammar.pegjs",
    "lint": "pnpm run lint:style && pnpm run lint:types",
    "lint:ci": "pnpm run lint:style --max-warnings 0 && pnpm run lint:types",
    "lint:style": "eslint \"src/**/*.{ts,tsx}\" \"*.mjs\" --fix",
    "lint:types": "tsc --noEmit --project tsconfig.json",
    "test": "pnpm grammar:compile && vitest run",
    "test:coverage": "pnpm run test --coverage",
    "test:watch": "pnpm run test --watch"
  }
}