{
    "name": "boats",
    "version": "5.3.0",
    "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": "14.2.1",
        "@apidevtools/swagger-parser": "12.1.0",
        "@asyncapi/parser": "3.4.0",
        "commander": "11.1.0",
        "deepmerge": "4.3.1",
        "dotenv": "16.4.7",
        "fs-extra": "11.3.2",
        "inquirer": "8.2.6",
        "js-yaml": "4.1.1",
        "lodash": "4.17.21",
        "npm-tool-version-check": "1.2.0",
        "nunjucks": "3.2.4",
        "picomatch": "4.0.3",
        "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"
    }
}
