{"_id":"@bytestruct/dnd5e-hbslint","name":"@bytestruct/dnd5e-hbslint","dist-tags":{"latest":"1.0.3"},"versions":{"1.0.3":{"name":"@bytestruct/dnd5e-hbslint","version":"1.0.3","type":"module","main":"src/index.mjs","bin":{"hbslint":"bin/hbslint.mjs"},"scripts":{"lint":"eslint src/ bin/ test/","test":"node --test \"test/**/*.test.mjs\""},"engines":{"node":">=20.0.0"},"license":"MIT","repository":{"url":"git+https://github.com/Fyorl/dnd5e-hbslint.git"},"dependencies":{"@handlebars/parser":"^2.2.2","glob":"^13.0.6"},"devDependencies":{"@bytestruct/dnd5e-eslint":"^1.0.2"},"publishConfig":{"access":"public"},"gitHead":"c8705c12908daf9a9228256c8cf6bc9ef1efa4f2","_id":"@bytestruct/dnd5e-hbslint@1.0.3","description":"Handlebars linter for enforcing dnd5e project code style conventions.","bugs":{"url":"https://github.com/Fyorl/dnd5e-hbslint/issues"},"homepage":"https://github.com/Fyorl/dnd5e-hbslint#readme","_nodeVersion":"24.18.0","_npmVersion":"11.16.0","dist":{"integrity":"sha512-CPa7bbKpXwpXAarO/mbm/aInk89eMXNdtQTD9Q3UZy1m89BB+XxfGz8huPwQlAKXKOsip/Gv3DSFHbUyNH4aHA==","shasum":"28e49910c1ee2e345354057ec8331d3f724a86c5","tarball":"https://registry.npmjs.org/@bytestruct/dnd5e-hbslint/-/dnd5e-hbslint-1.0.3.tgz","fileCount":35,"unpackedSize":39552,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIGV6CcFwYcKwO/VA7dB1zZ+BKP2gZoqF8WLE3Ex5W8q1AiEA5alMbn5R7zPd5yogVh/QmocYncKMKpXwfD8WZghDWw0="}]},"_npmUser":{"name":"fyorl","email":"kim.mantas@gmail.com"},"directories":{},"maintainers":[{"name":"fyorl","email":"kim.mantas@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/dnd5e-hbslint_1.0.3_1782920367702_0.7970599751098109"},"_hasShrinkwrap":false}},"time":{"created":"2026-07-01T15:39:27.561Z","1.0.3":"2026-07-01T15:39:27.832Z","modified":"2026-07-01T15:39:28.253Z"},"maintainers":[{"name":"fyorl","email":"kim.mantas@gmail.com"}],"description":"Handlebars linter for enforcing dnd5e project code style conventions.","homepage":"https://github.com/Fyorl/dnd5e-hbslint#readme","repository":{"url":"git+https://github.com/Fyorl/dnd5e-hbslint.git"},"bugs":{"url":"https://github.com/Fyorl/dnd5e-hbslint/issues"},"license":"MIT","readme":"# @bytestruct/dnd5e-hbslint\n\nHandlebars linter for enforcing dnd5e project code style conventions.\n\n## Installation\n\n```sh\nnpm install --save-dev @bytestruct/dnd5e-hbslint\n```\n\nIn `hbslint.config.mjs`:\n\n```js\nexport default {\n  rules: {\n    indentation: [\"error\", { blockDepth: false, size: 4, style: \"space\" }],\n    \"line-length\": [\"warn\", { max: 120 }],\n    \"mustache-spacing\": \"error\",\n    \"quote-style\": [\"error\", { style: \"double\" }]\n  }\n};\n```\n\n## Usage\n\n```sh\nhbslint \"templates/**/*.hbs\"\nhbslint \"templates/**/*.hbs\" --config path/to/hbslint.config.mjs\nhbslint \"templates/**/*.hbs\" --max-warnings 0\n```\n\n## Rules\n\n### `indentation`\n\nRequires content inside block helpers to be indented at the same level as the opening tag.\nSet `blockDepth: true` to add one additional indent level per nesting depth.\n\n```hbs\n{{! Incorrect }}\n<ul>\n    {{#if condition}}\n        <li>foo</li>\n    {{/if}}\n</ul>\n\n{{! Correct }}\n<ul>\n    {{#if condition}}\n    <li>foo</li>\n    {{/if}}\n</ul>\n```\n\n---\n\n### `line-length`\n\nEnforces a maximum line length across the template.\n\n---\n\n### `mustache-spacing`\n\nRequires consistent spacing inside `{{ }}` delimiters based on node type.\nExpressions require spaces; block open/close tags and else tags do not; partial statements require a space after `>`.\n\n```hbs\n{{! Incorrect }}\n{{foo}}\n{{#if condition}}{{/if}}\n{{>partial}}\n{{ else }}\n\n{{! Correct }}\n{{ foo }}\n{{#if condition}}{{/if}}\n{{> partial }}\n{{else}}\n```\n\n---\n\n### `quote-style`\n\nRequires consistent quote style for string literals in expressions.\n\n```hbs\n{{! Incorrect }}\n{{ foo bar='baz' }}\n\n{{! Correct }}\n{{ foo bar=\"baz\" }}\n```\n","readmeFilename":"README.md","_rev":"1-e7a9894f15f4d9a51514cabc5c4b6ae6"}