build: add simple-git-hooks and lint-staged setup
3 files modified
1 files added
| New file |
| | |
| | | // @see https://github.com/lint-staged/lint-staged |
| | | |
| | | /** |
| | | * @filename: .lintstagedrc.js |
| | | * @type {import('lint-staged').Configuration} |
| | | */ |
| | | export default { |
| | | // '*.{json,jsonc}': ['biome check --staged'], |
| | | // '.github/workflows/**/*.y(a?)ml': [ |
| | | // 'zizmor --no-exit-codes', |
| | | // ], |
| | | // 'package-lock.json': [ |
| | | // 'lockfile-lint --path package-lock.json --validate-https --allowed-hosts npm', |
| | | // ], |
| | | '*.{ts,tsx,(m|c)js,jsx}': (/** @type {string[]} */ files) => { |
| | | return [`biome check --no-errors-on-unmatched ${files.join(' ')}`] |
| | | }, |
| | | // '*.yaml': ['yamllint -c .yamllint.yml'], |
| | | // '*.{scss,css}': ['stylelint --fix', "prettier --write"], |
| | | // '*.{png,jpeg,jpg,gif,svg}': [ |
| | | // 'imagemin-lint-staged' // @davidsneighbour/imagemin-lint-staged |
| | | // ], |
| | | '!(CHANGELOG)**/*.{md,markdown}': [ |
| | | 'npm run lint:links', |
| | | 'npm run lint:markdown:fix' |
| | | ], |
| | | '**/*.ts?(x)': () => [ |
| | | 'tsc -p tsconfig.json --noEmit', |
| | | ], |
| | | // 'layouts/**/*.*': [ |
| | | // './bin/hugo/refactor layouts' |
| | | // ], |
| | | } |
| | |
| | | |
| | | This runs the documentation site from `site/` using contents from `docs/` with local configuration. |
| | | |
| | | 4. Follow the coding style and format commit messages as described in the conventional commits specification (for example: `docs: add troubleshooting section` or `fix: correct hero image path`). |
| | | |
| | | 5. Make sure to install git hooks for linting and testing before you push changes: |
| | | |
| | | ```bash |
| | | npm run prepare |
| | | ``` |
| | | |
| | | This command is run automatically after `npm install` but you can run it manually to set up hooks in an existing clone or update changed hooks. It uses `simple-git-hooks` to install a commit hook that runs `lint-staged` for markdown files, which in turn runs linting tasks on staged files. |
| | | |
| | | ## Reporting Bugs and Requesting Features |
| | | |
| | | * Open bugs in [GitHub Issues](https://github.com/theNewDynamic/gohugo-theme-ananke/issues). |
| | |
| | | "@github/markdownlint-github": "0.8.0", |
| | | "@types/node": "25.6.0", |
| | | "dotenv": "17.4.2", |
| | | "lint-staged": "16.4.0", |
| | | "markdownlint": "0.40.0", |
| | | "markdownlint-cli2": "0.22.0", |
| | | "markdownlint-rule-extended-ascii": "0.2.1", |
| | | "markdownlint-rule-list-duplicates": "0.0.1", |
| | | "markdownlint-rule-relative-links": "5.1.0", |
| | | "markdownlint-rule-search-replace": "1.2.0", |
| | | "markdownlint-rule-title-case-style": "0.4.3" |
| | | "markdownlint-rule-title-case-style": "0.4.3", |
| | | "simple-git-hooks": "2.13.1" |
| | | } |
| | | }, |
| | | "node_modules/@azu/format-text": { |
| | |
| | | "fsevents": "~2.3.2" |
| | | } |
| | | }, |
| | | "node_modules/cli-cursor": { |
| | | "version": "5.0.0", |
| | | "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-5.0.0.tgz", |
| | | "integrity": "sha512-aCj4O5wKyszjMmDT4tZj93kxyydN/K5zPWSCe6/0AV/AA1pqe5ZBIw0a2ZfPQV7lL5/yb5HsUreJ6UFAF1tEQw==", |
| | | "dev": true, |
| | | "license": "MIT", |
| | | "dependencies": { |
| | | "restore-cursor": "^5.0.0" |
| | | }, |
| | | "engines": { |
| | | "node": ">=18" |
| | | }, |
| | | "funding": { |
| | | "url": "https://github.com/sponsors/sindresorhus" |
| | | } |
| | | }, |
| | | "node_modules/cli-truncate": { |
| | | "version": "5.2.0", |
| | | "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-5.2.0.tgz", |
| | | "integrity": "sha512-xRwvIOMGrfOAnM1JYtqQImuaNtDEv9v6oIYAs4LIHwTiKee8uwvIi363igssOC0O5U04i4AlENs79LQLu9tEMw==", |
| | | "dev": true, |
| | | "license": "MIT", |
| | | "dependencies": { |
| | | "slice-ansi": "^8.0.0", |
| | | "string-width": "^8.2.0" |
| | | }, |
| | | "engines": { |
| | | "node": ">=20" |
| | | }, |
| | | "funding": { |
| | | "url": "https://github.com/sponsors/sindresorhus" |
| | | } |
| | | }, |
| | | "node_modules/cli-truncate/node_modules/ansi-styles": { |
| | | "version": "6.2.3", |
| | | "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.3.tgz", |
| | | "integrity": "sha512-4Dj6M28JB+oAH8kFkTLUo+a2jwOFkuqb3yucU0CANcRRUbxS0cP0nZYCGjcc3BNXwRIsUVmDGgzawme7zvJHvg==", |
| | | "dev": true, |
| | | "license": "MIT", |
| | | "engines": { |
| | | "node": ">=12" |
| | | }, |
| | | "funding": { |
| | | "url": "https://github.com/chalk/ansi-styles?sponsor=1" |
| | | } |
| | | }, |
| | | "node_modules/cli-truncate/node_modules/is-fullwidth-code-point": { |
| | | "version": "5.1.0", |
| | | "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-5.1.0.tgz", |
| | | "integrity": "sha512-5XHYaSyiqADb4RnZ1Bdad6cPp8Toise4TzEjcOYDHZkTCbKgiUl7WTUCpNWHuxmDt91wnsZBc9xinNzopv3JMQ==", |
| | | "dev": true, |
| | | "license": "MIT", |
| | | "dependencies": { |
| | | "get-east-asian-width": "^1.3.1" |
| | | }, |
| | | "engines": { |
| | | "node": ">=18" |
| | | }, |
| | | "funding": { |
| | | "url": "https://github.com/sponsors/sindresorhus" |
| | | } |
| | | }, |
| | | "node_modules/cli-truncate/node_modules/slice-ansi": { |
| | | "version": "8.0.0", |
| | | "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-8.0.0.tgz", |
| | | "integrity": "sha512-stxByr12oeeOyY2BlviTNQlYV5xOj47GirPr4yA1hE9JCtxfQN0+tVbkxwCtYDQWhEKWFHsEK48ORg5jrouCAg==", |
| | | "dev": true, |
| | | "license": "MIT", |
| | | "dependencies": { |
| | | "ansi-styles": "^6.2.3", |
| | | "is-fullwidth-code-point": "^5.1.0" |
| | | }, |
| | | "engines": { |
| | | "node": ">=20" |
| | | }, |
| | | "funding": { |
| | | "url": "https://github.com/chalk/slice-ansi?sponsor=1" |
| | | } |
| | | }, |
| | | "node_modules/cli-truncate/node_modules/string-width": { |
| | | "version": "8.2.0", |
| | | "resolved": "https://registry.npmjs.org/string-width/-/string-width-8.2.0.tgz", |
| | | "integrity": "sha512-6hJPQ8N0V0P3SNmP6h2J99RLuzrWz2gvT7VnK5tKvrNqJoyS9W4/Fb8mo31UiPvy00z7DQXkP2hnKBVav76thw==", |
| | | "dev": true, |
| | | "license": "MIT", |
| | | "dependencies": { |
| | | "get-east-asian-width": "^1.5.0", |
| | | "strip-ansi": "^7.1.2" |
| | | }, |
| | | "engines": { |
| | | "node": ">=20" |
| | | }, |
| | | "funding": { |
| | | "url": "https://github.com/sponsors/sindresorhus" |
| | | } |
| | | }, |
| | | "node_modules/cliui": { |
| | | "version": "8.0.1", |
| | | "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", |
| | |
| | | "dev": true, |
| | | "license": "MIT" |
| | | }, |
| | | "node_modules/colorette": { |
| | | "version": "2.0.20", |
| | | "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.20.tgz", |
| | | "integrity": "sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==", |
| | | "dev": true, |
| | | "license": "MIT" |
| | | }, |
| | | "node_modules/commander": { |
| | | "version": "14.0.3", |
| | | "resolved": "https://registry.npmjs.org/commander/-/commander-14.0.3.tgz", |
| | |
| | | "node": ">=0.10.0" |
| | | } |
| | | }, |
| | | "node_modules/eventemitter3": { |
| | | "version": "5.0.4", |
| | | "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-5.0.4.tgz", |
| | | "integrity": "sha512-mlsTRyGaPBjPedk6Bvw+aqbsXDtoAyAzm5MO7JgU+yVRyMQ5O8bD4Kcci7BS85f93veegeCPkL8R4GLClnjLFw==", |
| | | "dev": true, |
| | | "license": "MIT" |
| | | }, |
| | | "node_modules/extend-object": { |
| | | "version": "1.0.0", |
| | | "resolved": "https://registry.npmjs.org/extend-object/-/extend-object-1.0.0.tgz", |
| | |
| | | "uc.micro": "^2.0.0" |
| | | } |
| | | }, |
| | | "node_modules/lint-staged": { |
| | | "version": "16.4.0", |
| | | "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-16.4.0.tgz", |
| | | "integrity": "sha512-lBWt8hujh/Cjysw5GYVmZpFHXDCgZzhrOm8vbcUdobADZNOK/bRshr2kM3DfgrrtR1DQhfupW9gnIXOfiFi+bw==", |
| | | "dev": true, |
| | | "license": "MIT", |
| | | "dependencies": { |
| | | "commander": "^14.0.3", |
| | | "listr2": "^9.0.5", |
| | | "picomatch": "^4.0.3", |
| | | "string-argv": "^0.3.2", |
| | | "tinyexec": "^1.0.4", |
| | | "yaml": "^2.8.2" |
| | | }, |
| | | "bin": { |
| | | "lint-staged": "bin/lint-staged.js" |
| | | }, |
| | | "engines": { |
| | | "node": ">=20.17" |
| | | }, |
| | | "funding": { |
| | | "url": "https://opencollective.com/lint-staged" |
| | | } |
| | | }, |
| | | "node_modules/lint-staged/node_modules/picomatch": { |
| | | "version": "4.0.4", |
| | | "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.4.tgz", |
| | | "integrity": "sha512-QP88BAKvMam/3NxH6vj2o21R6MjxZUAd6nlwAS/pnGvN9IVLocLHxGYIzFhg6fUQ+5th6P4dv4eW9jX3DSIj7A==", |
| | | "dev": true, |
| | | "license": "MIT", |
| | | "engines": { |
| | | "node": ">=12" |
| | | }, |
| | | "funding": { |
| | | "url": "https://github.com/sponsors/jonschlinkert" |
| | | } |
| | | }, |
| | | "node_modules/listr2": { |
| | | "version": "9.0.5", |
| | | "resolved": "https://registry.npmjs.org/listr2/-/listr2-9.0.5.tgz", |
| | | "integrity": "sha512-ME4Fb83LgEgwNw96RKNvKV4VTLuXfoKudAmm2lP8Kk87KaMK0/Xrx/aAkMWmT8mDb+3MlFDspfbCs7adjRxA2g==", |
| | | "dev": true, |
| | | "license": "MIT", |
| | | "dependencies": { |
| | | "cli-truncate": "^5.0.0", |
| | | "colorette": "^2.0.20", |
| | | "eventemitter3": "^5.0.1", |
| | | "log-update": "^6.1.0", |
| | | "rfdc": "^1.4.1", |
| | | "wrap-ansi": "^9.0.0" |
| | | }, |
| | | "engines": { |
| | | "node": ">=20.0.0" |
| | | } |
| | | }, |
| | | "node_modules/listr2/node_modules/ansi-styles": { |
| | | "version": "6.2.3", |
| | | "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.3.tgz", |
| | | "integrity": "sha512-4Dj6M28JB+oAH8kFkTLUo+a2jwOFkuqb3yucU0CANcRRUbxS0cP0nZYCGjcc3BNXwRIsUVmDGgzawme7zvJHvg==", |
| | | "dev": true, |
| | | "license": "MIT", |
| | | "engines": { |
| | | "node": ">=12" |
| | | }, |
| | | "funding": { |
| | | "url": "https://github.com/chalk/ansi-styles?sponsor=1" |
| | | } |
| | | }, |
| | | "node_modules/listr2/node_modules/emoji-regex": { |
| | | "version": "10.6.0", |
| | | "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-10.6.0.tgz", |
| | | "integrity": "sha512-toUI84YS5YmxW219erniWD0CIVOo46xGKColeNQRgOzDorgBi1v4D71/OFzgD9GO2UGKIv1C3Sp8DAn0+j5w7A==", |
| | | "dev": true, |
| | | "license": "MIT" |
| | | }, |
| | | "node_modules/listr2/node_modules/string-width": { |
| | | "version": "7.2.0", |
| | | "resolved": "https://registry.npmjs.org/string-width/-/string-width-7.2.0.tgz", |
| | | "integrity": "sha512-tsaTIkKW9b4N+AEj+SVA+WhJzV7/zMhcSu78mLKWSk7cXMOSHsBKFWUs0fWwq8QyK3MgJBQRX6Gbi4kYbdvGkQ==", |
| | | "dev": true, |
| | | "license": "MIT", |
| | | "dependencies": { |
| | | "emoji-regex": "^10.3.0", |
| | | "get-east-asian-width": "^1.0.0", |
| | | "strip-ansi": "^7.1.0" |
| | | }, |
| | | "engines": { |
| | | "node": ">=18" |
| | | }, |
| | | "funding": { |
| | | "url": "https://github.com/sponsors/sindresorhus" |
| | | } |
| | | }, |
| | | "node_modules/listr2/node_modules/wrap-ansi": { |
| | | "version": "9.0.2", |
| | | "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-9.0.2.tgz", |
| | | "integrity": "sha512-42AtmgqjV+X1VpdOfyTGOYRi0/zsoLqtXQckTmqTeybT+BDIbM/Guxo7x3pE2vtpr1ok6xRqM9OpBe+Jyoqyww==", |
| | | "dev": true, |
| | | "license": "MIT", |
| | | "dependencies": { |
| | | "ansi-styles": "^6.2.1", |
| | | "string-width": "^7.0.0", |
| | | "strip-ansi": "^7.1.0" |
| | | }, |
| | | "engines": { |
| | | "node": ">=18" |
| | | }, |
| | | "funding": { |
| | | "url": "https://github.com/chalk/wrap-ansi?sponsor=1" |
| | | } |
| | | }, |
| | | "node_modules/load-json-file": { |
| | | "version": "4.0.0", |
| | | "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", |
| | |
| | | "node": ">=8" |
| | | } |
| | | }, |
| | | "node_modules/log-update": { |
| | | "version": "6.1.0", |
| | | "resolved": "https://registry.npmjs.org/log-update/-/log-update-6.1.0.tgz", |
| | | "integrity": "sha512-9ie8ItPR6tjY5uYJh8K/Zrv/RMZ5VOlOWvtZdEHYSTFKZfIBPQa9tOAEeAWhd+AnIneLJ22w5fjOYtoutpWq5w==", |
| | | "dev": true, |
| | | "license": "MIT", |
| | | "dependencies": { |
| | | "ansi-escapes": "^7.0.0", |
| | | "cli-cursor": "^5.0.0", |
| | | "slice-ansi": "^7.1.0", |
| | | "strip-ansi": "^7.1.0", |
| | | "wrap-ansi": "^9.0.0" |
| | | }, |
| | | "engines": { |
| | | "node": ">=18" |
| | | }, |
| | | "funding": { |
| | | "url": "https://github.com/sponsors/sindresorhus" |
| | | } |
| | | }, |
| | | "node_modules/log-update/node_modules/ansi-styles": { |
| | | "version": "6.2.3", |
| | | "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.3.tgz", |
| | | "integrity": "sha512-4Dj6M28JB+oAH8kFkTLUo+a2jwOFkuqb3yucU0CANcRRUbxS0cP0nZYCGjcc3BNXwRIsUVmDGgzawme7zvJHvg==", |
| | | "dev": true, |
| | | "license": "MIT", |
| | | "engines": { |
| | | "node": ">=12" |
| | | }, |
| | | "funding": { |
| | | "url": "https://github.com/chalk/ansi-styles?sponsor=1" |
| | | } |
| | | }, |
| | | "node_modules/log-update/node_modules/emoji-regex": { |
| | | "version": "10.6.0", |
| | | "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-10.6.0.tgz", |
| | | "integrity": "sha512-toUI84YS5YmxW219erniWD0CIVOo46xGKColeNQRgOzDorgBi1v4D71/OFzgD9GO2UGKIv1C3Sp8DAn0+j5w7A==", |
| | | "dev": true, |
| | | "license": "MIT" |
| | | }, |
| | | "node_modules/log-update/node_modules/is-fullwidth-code-point": { |
| | | "version": "5.1.0", |
| | | "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-5.1.0.tgz", |
| | | "integrity": "sha512-5XHYaSyiqADb4RnZ1Bdad6cPp8Toise4TzEjcOYDHZkTCbKgiUl7WTUCpNWHuxmDt91wnsZBc9xinNzopv3JMQ==", |
| | | "dev": true, |
| | | "license": "MIT", |
| | | "dependencies": { |
| | | "get-east-asian-width": "^1.3.1" |
| | | }, |
| | | "engines": { |
| | | "node": ">=18" |
| | | }, |
| | | "funding": { |
| | | "url": "https://github.com/sponsors/sindresorhus" |
| | | } |
| | | }, |
| | | "node_modules/log-update/node_modules/slice-ansi": { |
| | | "version": "7.1.2", |
| | | "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-7.1.2.tgz", |
| | | "integrity": "sha512-iOBWFgUX7caIZiuutICxVgX1SdxwAVFFKwt1EvMYYec/NWO5meOJ6K5uQxhrYBdQJne4KxiqZc+KptFOWFSI9w==", |
| | | "dev": true, |
| | | "license": "MIT", |
| | | "dependencies": { |
| | | "ansi-styles": "^6.2.1", |
| | | "is-fullwidth-code-point": "^5.0.0" |
| | | }, |
| | | "engines": { |
| | | "node": ">=18" |
| | | }, |
| | | "funding": { |
| | | "url": "https://github.com/chalk/slice-ansi?sponsor=1" |
| | | } |
| | | }, |
| | | "node_modules/log-update/node_modules/string-width": { |
| | | "version": "7.2.0", |
| | | "resolved": "https://registry.npmjs.org/string-width/-/string-width-7.2.0.tgz", |
| | | "integrity": "sha512-tsaTIkKW9b4N+AEj+SVA+WhJzV7/zMhcSu78mLKWSk7cXMOSHsBKFWUs0fWwq8QyK3MgJBQRX6Gbi4kYbdvGkQ==", |
| | | "dev": true, |
| | | "license": "MIT", |
| | | "dependencies": { |
| | | "emoji-regex": "^10.3.0", |
| | | "get-east-asian-width": "^1.0.0", |
| | | "strip-ansi": "^7.1.0" |
| | | }, |
| | | "engines": { |
| | | "node": ">=18" |
| | | }, |
| | | "funding": { |
| | | "url": "https://github.com/sponsors/sindresorhus" |
| | | } |
| | | }, |
| | | "node_modules/log-update/node_modules/wrap-ansi": { |
| | | "version": "9.0.2", |
| | | "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-9.0.2.tgz", |
| | | "integrity": "sha512-42AtmgqjV+X1VpdOfyTGOYRi0/zsoLqtXQckTmqTeybT+BDIbM/Guxo7x3pE2vtpr1ok6xRqM9OpBe+Jyoqyww==", |
| | | "dev": true, |
| | | "license": "MIT", |
| | | "dependencies": { |
| | | "ansi-styles": "^6.2.1", |
| | | "string-width": "^7.0.0", |
| | | "strip-ansi": "^7.1.0" |
| | | }, |
| | | "engines": { |
| | | "node": ">=18" |
| | | }, |
| | | "funding": { |
| | | "url": "https://github.com/chalk/wrap-ansi?sponsor=1" |
| | | } |
| | | }, |
| | | "node_modules/lru-cache": { |
| | | "version": "6.0.0", |
| | | "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", |
| | |
| | | "node": ">=16" |
| | | } |
| | | }, |
| | | "node_modules/mimic-function": { |
| | | "version": "5.0.1", |
| | | "resolved": "https://registry.npmjs.org/mimic-function/-/mimic-function-5.0.1.tgz", |
| | | "integrity": "sha512-VP79XUPxV2CigYP3jWwAUFSku2aKqBH7uTAapFWCBqutsbmDo96KY5o8uh6U+/YSIn5OxJnXp73beVkpqMIGhA==", |
| | | "dev": true, |
| | | "license": "MIT", |
| | | "engines": { |
| | | "node": ">=18" |
| | | }, |
| | | "funding": { |
| | | "url": "https://github.com/sponsors/sindresorhus" |
| | | } |
| | | }, |
| | | "node_modules/min-indent": { |
| | | "version": "1.0.1", |
| | | "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz", |
| | |
| | | "node": ">= 6" |
| | | } |
| | | }, |
| | | "node_modules/onetime": { |
| | | "version": "7.0.0", |
| | | "resolved": "https://registry.npmjs.org/onetime/-/onetime-7.0.0.tgz", |
| | | "integrity": "sha512-VXJjc87FScF88uafS3JllDgvAm+c/Slfz06lorj2uAY34rlUu0Nt+v8wreiImcrgAjjIHp1rXpTDlLOGw29WwQ==", |
| | | "dev": true, |
| | | "license": "MIT", |
| | | "dependencies": { |
| | | "mimic-function": "^5.0.0" |
| | | }, |
| | | "engines": { |
| | | "node": ">=18" |
| | | }, |
| | | "funding": { |
| | | "url": "https://github.com/sponsors/sindresorhus" |
| | | } |
| | | }, |
| | | "node_modules/p-limit": { |
| | | "version": "3.1.0", |
| | | "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", |
| | |
| | | "node": ">=4" |
| | | } |
| | | }, |
| | | "node_modules/restore-cursor": { |
| | | "version": "5.1.0", |
| | | "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-5.1.0.tgz", |
| | | "integrity": "sha512-oMA2dcrw6u0YfxJQXm342bFKX/E4sG9rbTzO9ptUcR/e8A33cHuvStiYOwH7fszkZlZ1z/ta9AAoPk2F4qIOHA==", |
| | | "dev": true, |
| | | "license": "MIT", |
| | | "dependencies": { |
| | | "onetime": "^7.0.0", |
| | | "signal-exit": "^4.1.0" |
| | | }, |
| | | "engines": { |
| | | "node": ">=18" |
| | | }, |
| | | "funding": { |
| | | "url": "https://github.com/sponsors/sindresorhus" |
| | | } |
| | | }, |
| | | "node_modules/restore-cursor/node_modules/signal-exit": { |
| | | "version": "4.1.0", |
| | | "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", |
| | | "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", |
| | | "dev": true, |
| | | "license": "ISC", |
| | | "engines": { |
| | | "node": ">=14" |
| | | }, |
| | | "funding": { |
| | | "url": "https://github.com/sponsors/isaacs" |
| | | } |
| | | }, |
| | | "node_modules/retry": { |
| | | "version": "0.12.0", |
| | | "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", |
| | |
| | | "node": ">=0.10.0" |
| | | } |
| | | }, |
| | | "node_modules/rfdc": { |
| | | "version": "1.4.1", |
| | | "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.4.1.tgz", |
| | | "integrity": "sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA==", |
| | | "dev": true, |
| | | "license": "MIT" |
| | | }, |
| | | "node_modules/rimraf": { |
| | | "version": "6.1.3", |
| | | "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-6.1.3.tgz", |
| | |
| | | "safe-buffer": "~5.2.0" |
| | | } |
| | | }, |
| | | "node_modules/string-argv": { |
| | | "version": "0.3.2", |
| | | "resolved": "https://registry.npmjs.org/string-argv/-/string-argv-0.3.2.tgz", |
| | | "integrity": "sha512-aqD2Q0144Z+/RqG52NeHEkZauTAUWJO8c6yTftGJKO3Tja5tUgIfmIl6kExvhtxSDP7fXB6DvzkfMpCd/F3G+Q==", |
| | | "dev": true, |
| | | "license": "MIT", |
| | | "engines": { |
| | | "node": ">=0.6.19" |
| | | } |
| | | }, |
| | | "node_modules/string-strip-html": { |
| | | "version": "8.5.0", |
| | | "resolved": "https://registry.npmjs.org/string-strip-html/-/string-strip-html-8.5.0.tgz", |
| | |
| | | "safe-buffer": "~5.1.0" |
| | | } |
| | | }, |
| | | "node_modules/tinyexec": { |
| | | "version": "1.1.1", |
| | | "resolved": "https://registry.npmjs.org/tinyexec/-/tinyexec-1.1.1.tgz", |
| | | "integrity": "sha512-VKS/ZaQhhkKFMANmAOhhXVoIfBXblQxGX1myCQ2faQrfmobMftXeJPcZGp0gS07ocvGJWDLZGyOZDadDBqYIJg==", |
| | | "dev": true, |
| | | "license": "MIT", |
| | | "engines": { |
| | | "node": ">=18" |
| | | } |
| | | }, |
| | | "node_modules/title-case": { |
| | | "version": "4.3.2", |
| | | "resolved": "https://registry.npmjs.org/title-case/-/title-case-4.3.2.tgz", |
| | |
| | | "@github/markdownlint-github": "0.8.0", |
| | | "@types/node": "25.6.0", |
| | | "dotenv": "17.4.2", |
| | | "lint-staged": "16.4.0", |
| | | "markdownlint": "0.40.0", |
| | | "markdownlint-cli2": "0.22.0", |
| | | "markdownlint-rule-extended-ascii": "0.2.1", |
| | | "markdownlint-rule-list-duplicates": "0.0.1", |
| | | "markdownlint-rule-relative-links": "5.1.0", |
| | | "markdownlint-rule-search-replace": "1.2.0", |
| | | "markdownlint-rule-title-case-style": "0.4.3" |
| | | "markdownlint-rule-title-case-style": "0.4.3", |
| | | "simple-git-hooks": "2.13.1" |
| | | }, |
| | | "scripts": { |
| | | "hook:commit": "lint-staged --config .lintstagedrc.js", |
| | | "hook:push": "node scripts/test-hugo-quickstart.ts", |
| | | "lint:links": "lychee --config lychee.toml public", |
| | | "lint:markdown": "markdownlint-cli2 docs/**/*.{md,mdx}", |
| | | "lint:markdown:fix": "markdownlint-cli2 --fix docs/**/*.{md,mdx}", |
| | | "release": "wireit", |
| | | "release:pre": "wireit", |
| | | "server": "wireit", |
| | | "test:quickstart": "node scripts/test-hugo-quickstart.ts", |
| | | "update:docs": "wireit", |
| | | "test:quickstart": "node scripts/test-hugo-quickstart.ts" |
| | | "test": "node scripts/test-hugo-quickstart.ts", |
| | | "prepare": "simple-git-hooks install" |
| | | }, |
| | | "wireit": { |
| | | "release": { |
| | |
| | | "node_modules" |
| | | ] |
| | | }, |
| | | "simple-git-hooks": { |
| | | "pre-commit": "npm run hook:commit", |
| | | "pre-push": "npm run hook:push" |
| | | }, |
| | | "type": "module" |
| | | } |