{
  "name": "@schalkneethling/miyagi-core",
  "version": "4.10.0",
  "description": "miyagi is a component development tool for JavaScript template engines.",
  "main": "index.js",
  "author": "Schalk Neethling <schalkneethling@duck.com>, Michael Großklaus <mail@mgrossklaus.de> (https://www.mgrossklaus.de)",
  "license": "MIT",
  "homepage": "https://www.miyagi.dev",
  "bugs": "https://github.com/miyagi-dev/miyagi/issues",
  "repository": {
    "type": "git",
    "url": "https://github.com/schalkneethling/miyagi.git"
  },
  "type": "module",
  "keywords": [
    "components",
    "pattern",
    "library",
    "html",
    "frontend"
  ],
  "engines": {
    "node": ">=24"
  },
  "files": [
    "api",
    "bin",
    "dist",
    "frontend",
    "index.js",
    "lib"
  ],
  "bin": {
    "miyagi": "./bin/miyagi.js"
  },
  "dependencies": {
    "@adobe/css-tools": "^4.4.4",
    "@stoplight/json-schema-sampler": "^0.3.0",
    "ajv": "^8.17.1",
    "anymatch": "^3.1.3",
    "chokidar": "^5.0.0",
    "cookie-parser": "^1.4.7",
    "deepmerge": "^4.3.1",
    "dependency-tree": "^11.4.3",
    "directory-tree": "^3.5.2",
    "express": "^5.1.0",
    "html-validate": "^10.11.2",
    "js-yaml": "^4.1.0",
    "marked": "^17.0.2",
    "twing": "7.3.1",
    "valibot": "^1.2.0",
    "ws": "^8.18.3",
    "yargs": "^18.0.0"
  },
  "devDependencies": {
    "@eslint/js": "^10.0.1",
    "@rollup/plugin-node-resolve": "^16.0.3",
    "@rollup/plugin-terser": "^1.0.0",
    "@types/js-yaml": "^4.0.9",
    "@types/node": "^25.3.3",
    "@types/yargs": "^17.0.35",
    "@vitest/coverage-v8": "^4.0.6",
    "cssnano": "^7.1.2",
    "eslint": "^10.2.0",
    "eslint-plugin-jsdoc": "^62.5.4",
    "globals": "^17.4.0",
    "gulp": "^5.0.1",
    "gulp-postcss": "^10.0.0",
    "postcss": "^8.5.6",
    "postcss-import": "^16.1.1",
    "pre-commit": "^1.2.2",
    "prettier": "^3.6.2",
    "rollup": "^4.52.5",
    "stylelint": "^16.25.0",
    "stylelint-config-standard": "^39.0.1",
    "typescript-eslint": "^8.46.2",
    "vitest": "^4.0.6"
  },
  "scripts": {
    "build": "gulp build",
    "test": "vitest run --coverage --coverage.include=api --coverage.include=lib",
    "lint": "stylelint frontend/assets/css/ && eslint lib/ && eslint frontend/assets/js/",
    "fix": "eslint lib/ --fix && eslint frontend/assets/js/ --fix",
    "format": "prettier --write .",
    "docs:sync-default-config": "node scripts/docs/sync-default-config.mjs --write",
    "docs:check-default-config": "node scripts/docs/sync-default-config.mjs --check",
    "docs:dev": "pnpm --filter @schalkneethling/miyagi-docs dev",
    "docs:build": "pnpm --filter @schalkneethling/miyagi-docs build",
    "docs:preview": "pnpm --filter @schalkneethling/miyagi-docs preview"
  },
  "browserslist": [
    "last 2 versions",
    "> 2%",
    "not ie <= 11",
    "not ie_mob <= 11",
    "not op_mini all",
    "not op_mob < 100",
    "not baidu < 100",
    "not and_qq < 100",
    "not dead"
  ],
  "pnpm": {
    "overrides": {
      "json-pointer": ">=0.6.2",
      "minimist": "^1.2.6",
      "globals": "^15.8.0"
    }
  },
  "stylelint": {
    "extends": [
      "stylelint-config-standard"
    ],
    "rules": {
      "custom-property-pattern": null,
      "declaration-block-no-redundant-longhand-properties": null,
      "keyframes-name-pattern": null,
      "no-descending-specificity": null,
      "number-max-precision": 5,
      "selector-class-pattern": null,
      "media-feature-range-notation": null
    }
  },
  "pre-commit": [
    "lint",
    "test"
  ]
}
