{"_id":"@aep_dev/aep-openapi-linter","_rev":"2-0c28f05c205c7cd2000a8d2fc62146c8","name":"@aep_dev/aep-openapi-linter","dist-tags":{"latest":"0.5.3"},"versions":{"0.5.1":{"name":"@aep_dev/aep-openapi-linter","version":"0.5.1","author":{"name":"Mike Kistler"},"license":"MIT","_id":"@aep_dev/aep-openapi-linter@0.5.1","maintainers":[{"name":"mkistler","email":"mkistler@sbcglobal.net"},{"name":"rambleraptor","email":"astephen2@gmail.com"}],"homepage":"https://github.com/aep-dev/aep-openapi-linter#readme","bugs":{"url":"https://github.com/aep-dev/aep-openapi-linter/issues"},"dist":{"shasum":"866559137c7503df7659c6c3813eb61bc2a46e6e","tarball":"https://registry.npmjs.org/@aep_dev/aep-openapi-linter/-/aep-openapi-linter-0.5.1.tgz","fileCount":26,"integrity":"sha512-ggMHB9NczO0nFUZ9JnESsD8b1JjNqjmcZgn1QYz5kNdZfs7CxnuZVJdFwfl6jGK+by0f6TAImyoEbDSweCN/6g==","signatures":[{"sig":"MEQCICiDzr7AERWyniC1iKQHdotvvnjhL6nm43hS19aba84WAiA8YHKSkfmn1RK4iCJfbbngsNPVEOI2iFWtCpRKEK/MjQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":60786},"jest":{"collectCoverage":true,"moduleNameMapper":{"^nimma/(.*)":"<rootDir>/node_modules/nimma/dist/cjs/$1","^nimma/legacy$":"<rootDir>/node_modules/nimma/dist/legacy/cjs/index.js","^@stoplight/spectral-ruleset-bundler/(.*)$":"<rootDir>/node_modules/@stoplight/spectral-ruleset-bundler/dist/$1"},"coverageThreshold":{"./functions/*.js":{"statements":80}},"collectCoverageFrom":["functions/*.js"]},"main":"spectral.yaml","gitHead":"91215ce2a14614f31c959aa5695c970ad83f08a5","scripts":{"lint":"prettier --check . && eslint --cache --quiet --ext '.js' functions test","test":"jest --coverage","lint-fix":"prettier --write . && eslint --cache --quiet --ext '.js' --fix functions test","release:major":"./scripts/prepare-release.sh major","release:minor":"./scripts/prepare-release.sh minor","release:patch":"./scripts/prepare-release.sh patch"},"_npmUser":{"name":"mkistler","email":"mkistler@sbcglobal.net"},"repository":{"url":"git+https://github.com/aep-dev/aep-openapi-linter.git"},"_npmVersion":"11.6.2","description":"Linter for OpenAPI definitions to check compliance to AEPs","directories":{},"_nodeVersion":"24.11.1","dependencies":{"@stoplight/spectral-functions":"^1.10.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"ajv":"^8.6.2","jest":"^29.7.0","eslint":"^8.57.0","prettier":"^3.2.5","@jest/globals":"^29.7.0","eslint-plugin-import":"^2.23.4","eslint-config-prettier":"^9.1.0","@stoplight/spectral-core":"^1.20.0","eslint-config-airbnb-base":"^15.0.0","@stoplight/spectral-parsers":"^1.0.5","@stoplight/spectral-rulesets":"^1.21.3","@stoplight/spectral-ruleset-migrator":"^1.11.1"},"_npmOperationalInternal":{"tmp":"tmp/aep-openapi-linter_0.5.1_1769782117912_0.34086124830580733","host":"s3://npm-registry-packages-npm-production"}},"0.5.3":{"name":"@aep_dev/aep-openapi-linter","version":"0.5.3","description":"Linter for OpenAPI definitions to check compliance to AEPs","main":"spectral.yaml","publishConfig":{"access":"public"},"scripts":{"lint":"prettier --check . && eslint --cache --quiet --ext '.js' functions test","lint-fix":"prettier --write . && eslint --cache --quiet --ext '.js' --fix functions test","test":"jest --coverage","release:patch":"./scripts/prepare-release.sh patch","release:minor":"./scripts/prepare-release.sh minor","release:major":"./scripts/prepare-release.sh major"},"author":{"name":"Mike Kistler"},"license":"MIT","repository":{"url":"git+https://github.com/aep-dev/aep-openapi-linter.git"},"devDependencies":{"@jest/globals":"^29.7.0","@stoplight/spectral-core":"^1.20.0","@stoplight/spectral-parsers":"^1.0.5","@stoplight/spectral-ruleset-migrator":"^1.11.1","@stoplight/spectral-rulesets":"^1.21.3","ajv":"^8.6.2","eslint":"^8.57.0","eslint-config-airbnb-base":"^15.0.0","eslint-config-prettier":"^9.1.0","eslint-plugin-import":"^2.23.4","jest":"^29.7.0","prettier":"^3.2.5"},"jest":{"collectCoverage":true,"collectCoverageFrom":["functions/*.js"],"coverageThreshold":{"./functions/*.js":{"statements":80}},"moduleNameMapper":{"^nimma/legacy$":"<rootDir>/node_modules/nimma/dist/legacy/cjs/index.js","^nimma/(.*)":"<rootDir>/node_modules/nimma/dist/cjs/$1","^@stoplight/spectral-ruleset-bundler/(.*)$":"<rootDir>/node_modules/@stoplight/spectral-ruleset-bundler/dist/$1"}},"dependencies":{"@stoplight/spectral-functions":"^1.10.1"},"gitHead":"676eb84f1c9dbbd3787f4c6a762d980cb0dd9f65","_id":"@aep_dev/aep-openapi-linter@0.5.3","bugs":{"url":"https://github.com/aep-dev/aep-openapi-linter/issues"},"homepage":"https://github.com/aep-dev/aep-openapi-linter#readme","_nodeVersion":"20.20.0","_npmVersion":"11.11.0","dist":{"integrity":"sha512-Jq0Y5iQJNccLDygZps9YIp8U/IhLC2gyx/6uAUwhUywQmo812kDMN7JgbtU20roZcrY6vvQ4slkrEgyjJ6da2w==","shasum":"e6f0e9ac7f3e9d65bae2af999ec0aa1f3a2c1fe7","tarball":"https://registry.npmjs.org/@aep_dev/aep-openapi-linter/-/aep-openapi-linter-0.5.3.tgz","fileCount":26,"unpackedSize":61299,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@aep_dev%2faep-openapi-linter@0.5.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIDpwM7gPZUYSFBmpmowm/KoGr3oQ1hi6BXEh7ucm+Z6UAiEA7N010+Wxutyd6E3+LKDuhL/2FeOFxQIo2lvm4SHwswQ="}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:86a3e76b-6fe2-48ea-ab2c-c4a824ded1e8"}},"directories":{},"maintainers":[{"name":"mkistler","email":"mkistler@sbcglobal.net"},{"name":"rambleraptor","email":"astephen2@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/aep-openapi-linter_0.5.3_1772112079467_0.24154899686777798"},"_hasShrinkwrap":false}},"time":{"created":"2026-01-30T14:08:37.837Z","modified":"2026-02-26T13:21:19.979Z","0.5.1":"2026-01-30T14:08:38.057Z","0.5.3":"2026-02-26T13:21:19.615Z"},"bugs":{"url":"https://github.com/aep-dev/aep-openapi-linter/issues"},"author":{"name":"Mike Kistler"},"license":"MIT","homepage":"https://github.com/aep-dev/aep-openapi-linter#readme","repository":{"url":"git+https://github.com/aep-dev/aep-openapi-linter.git"},"description":"Linter for OpenAPI definitions to check compliance to AEPs","maintainers":[{"name":"mkistler","email":"mkistler@sbcglobal.net"},{"name":"rambleraptor","email":"astephen2@gmail.com"}],"readme":"# aep-openapi-linter\n\nLinter for OpenAPI definitions to check compliance to [AEPs].\n\nThis repository contains a [Spectral](https://github.com/stoplightio/spectral)\nruleset to check an [OpenAPI] document for conformance to the [API Enhancement\nProposals].\n\n[AEPs]: https://aep.dev\n[API Enhancement Proposals]: https://aep.dev\n[OpenAPI]: https://www.openapis.org/\n\n## How to use the aep-openapi-linter\n\n### Dependencies\n\nThe Spectral Ruleset requires:\n\n- Node version 20 or later.\n- The [@stoplight/spectral-cli] npm package.\n\n[@stoplight/spectral-cli]:\n  https://www.npmjs.com/package/@stoplight/spectral-cli\n\n### Installation\n\nYou can use the aep-openapi-linter as an npm package or directly from GitHub.\n\nIf you choose to use it as an npm package, install it in your project as you\nwould any other npm package:\n\n```sh\nnpm install @aep_dev/aep-openapi-linter\n```\n\n### Usage\n\nTo use the aep-openapi-linter, create a Spectral configuration file\n(`.spectral.yaml`) that references the ruleset. If you installed the\naep-openapi-linter npm package into your project, you can just reference the\nruleset by name:\n\n```yaml\nextends:\n  - '@aep_dev/aep-openapi-linter'\n```\n\nNote that the quotes are required by yaml syntax.\n\nYou can also bypass installing the npm aep-openapi-linter package and reference\nthe ruleset directly from GitHub:\n\n```yaml\nextends:\n  - https://raw.githubusercontent.com/aep-dev/aep-openapi-linter/main/spectral.yaml\n```\n\nYou can pin to a specific release of the ruleset by replacing `main` with the\ntag for the release. E.g.\n\n```yaml\nextends:\n  - https://raw.githubusercontent.com/aep-dev/aep-openapi-linter/refs/tags/v0.5.1/spectral.yaml\n```\n\n### Using the Spectral VSCode extension\n\nThere is a\n[Spectral VSCode extension](https://marketplace.visualstudio.com/items?itemName=stoplight.spectral)\nthat will run the Spectral linter on an open API definition file and show\nerrors right within VSCode. You can use this ruleset with the Spectral VSCode\nextension.\n\n1. Install the Spectral VSCode extension from the extensions tab in VSCode.\n2. Create a Spectral configuration file (`.spectral.yaml`) in the root\n   directory of your project as shown above.\n3. Set `spectral.rulesetFile` to the name of this configuration file in your\n   VSCode settings.\n\nNow when you open an OpenAPI document in this project, it should highlight\nlines with errors. You can also get a full list of problems in the file by\nopening the \"Problems panel\" with \"View / Problems\". In the Problems panel you\ncan filter to show or hide errors, warnings, or infos.\n\n## Contributing\n\nSee [CONTRIBUTING](./CONTRIBUTING.md) for more details.\n","readmeFilename":"README.md"}