{
  "name": "boats",
  "version": "5.1.3",
  "description": "Beautiful Open / Async Template System - Write less yaml with BOATS and Nunjucks.",
  "keywords": [
    "asyncapi",
    "openapi",
    "openapi2",
    "openapi3",
    "snippets",
    "swagger",
    "openapi template",
    "yaml",
    "bundle",
    "nunjucks",
    "yml",
    "DDD",
    "Documentation-Driven Development"
  ],
  "bin": {
    "boats": "./bin/cli.js",
    "bundler": "./bin/cli.js"
  },
  "scripts": {
    "prepare": "npm run build",
    "install:githooks": "cp ./githooks/* .git/hooks",
    "build:tocs": "npx doctoc .",
    "tsc": "tsc",
    "build": "rimraf -fR ./build && tsc --project tsconfig.json --declaration --declarationDir build && tsc-alias -p tsconfig.json",
    "build:watch": "ttsc --watch -p .",
    "lint": "eslint 'src/**/*.{js,ts,tsx}'",
    "lint:fix": "eslint \"src/**/*.{js,ts,tsx}\" --quiet --fix",
    "format": "prettier 'src/**/*.(ts|json)' --write",
    "test": "npm run lint:fix && npm run build && npm run test:clean && npm run test:builds && npm run test:unit",
    "test:clean": "rimraf -fR ./test-build/*",
    "test:unit": "cross-env NODE_ENV=test jest --runInBand",
    "test:unit:single": "cross-env NODE_ENV=test jest --collect-coverage false",
    "test:builds": "npm run test:build-cli:asyncapi:std && npm run test:build-cli:oa2:std && npm run test:build-cli:oa2:readonly && npm run test:build-cli:oa2:std:exclude-version && npm run test:build-cli:oa3:std && npm run test:build-cli:oa3:std:exclude-version && npm run test:build-cli:oa2:inject && npm run test:build-cli:oa3:std:single-file-output",
    "test:init:builds": "npm run test:init:asyncapi && npm run test:init:oa2 && npm run test:init:oa3",
    "test:init:asyncapi": "node ./bin/cli.js -x -O --yes -n -i init-files/asyncapi/index.yml -o ./init-files/build/async/output.yml -s init-files/asyncapi/channels/",
    "test:init:oa2": "node ./bin/cli.js -x -O --yes -n -i init-files/oa2/index.yml -o ./init-files/build/oa2/output.yml -s init-files/oa2/paths/",
    "test:init:oa3": "node ./bin/cli.js -x -O --yes -n -i init-files/oa3/index.yml -o ./init-files/build/oa3/output.yml -s init-files/oa3/paths/",
    "test:build-cli:asyncapi:std": "node ./bin/cli.js --yes -n -i ./srcASYNC2/index.yml -o ./test-build/srcASYNC2/srcASYNC2.yml -s srcASYNC2/channels/",
    "test:build-cli:oa2:inject": "node ./bin/cli.js --yes -n -i ./srcOA2/index.injections.yml -o ./test-build/builtOA2_inject/api.yml -s srcOA2/paths/",
    "test:build-cli:oa2:readonly": "node ./bin/cli.js --yes -n -i ./srcOA2/index.readonly.yml -o ./test-build/builtOA2_readonly/builtOA2_readonly.yml -s srcOA2/paths/",
    "test:build-cli:oa2:std": "node ./bin/cli.js --yes -n -i ./srcOA2/index.yml -o ./test-build/builtOA2_std/builtOA2_std.yml -s srcOA2/paths/",
    "test:build-cli:oa2:std:exclude-version": "node ./bin/cli.js --yes -n -i ./srcOA2/index.yml -o ./test-build/builtOA2_no_version/builtOA2_no_version.yml -x -s srcOA2/paths/",
    "test:build-cli:oa3:std": "node ./bin/cli.js --yes -n -i ./srcOA3/index.yml -o ./test-build/builtOA3_std/builtOA3.yml -s srcOA3/paths/",
    "test:build-cli:oa3:std:single-file-output": "node ./bin/cli.js --yes --one-file-output -n -i ./srcOA3/index.yml -o ./test-build/builtOA3_std_onefile/builtOA3.yml -s srcOA3/paths/",
    "test:build-cli:oa3:std:exclude-version": "node ./bin/cli.js --yes -n -i ./srcOA3/index.yml -o ./test-build/builtOA3_exclude/builtOA3.yml -x -s srcOA3/paths/",
    "prepublishOnly": "npm run build && npm run test"
  },
  "repository": {
    "type": "git",
    "url": "git+https://github.com/j-d-carmichael/boats.git"
  },
  "author": "John Carmichael",
  "license": "MIT",
  "bugs": {
    "url": "https://github.com/j-d-carmichael/boats/issues"
  },
  "homepage": "https://github.com/j-d-carmichael/boats#readme",
  "dependencies": {
    "@apidevtools/json-schema-ref-parser": "11.9.1",
    "@apidevtools/swagger-parser": "10.1.1",
    "@asyncapi/parser": "3.4.0",
    "commander": "11.1.0",
    "deepmerge": "4.3.1",
    "dotenv": "16.4.7",
    "fs-extra": "11.3.0",
    "inquirer": "8.2.6",
    "js-yaml": "4.1.0",
    "lodash": "4.17.21",
    "npm-tool-version-check": "1.2.0",
    "nunjucks": "3.2.4",
    "picomatch": "4.0.2",
    "pluralize": "8.0.0",
    "ts-replace-all": "1.0.0",
    "tslib": "2.8.1",
    "upath": "2.0.1"
  },
  "devDependencies": {
    "@types/fs-extra": "11.0.4",
    "@types/inquirer": "8.2.10",
    "@types/jest": "29.5.14",
    "@types/js-yaml": "4.0.9",
    "@types/lodash": "4.17.15",
    "@types/node": "22.13.4",
    "@types/node-fetch": "2.6.12",
    "@types/nunjucks": "3.2.6",
    "@types/picomatch": "3.0.2",
    "@types/pluralize": "0.0.33",
    "@typescript-eslint/eslint-plugin": "8.14.0",
    "@typescript-eslint/parser": "8.14.0",
    "cross-env": "7.0.3",
    "eslint": "8.57.1",
    "hasha": "5.2.2",
    "jest": "29.7.0",
    "prettier": "2.8.8",
    "rimraf": "3.0.2",
    "ts-jest": "29.2.5",
    "ts-node": "10.9.2",
    "tsc-alias": "1.8.10",
    "tsconfig-paths": "4.2.0",
    "typescript": "5.6.3"
  }
}
