https://github.com/rebeccastevens/typedoc-plugin-custom-validation
https://github.com/rebeccastevens/typedoc-plugin-custom-validation
Last synced: 22 days ago
JSON representation
- Host: GitHub
- URL: https://github.com/rebeccastevens/typedoc-plugin-custom-validation
- Owner: RebeccaStevens
- License: bsd-3-clause
- Created: 2023-02-24T05:02:04.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2025-05-10T14:53:32.000Z (24 days ago)
- Last Synced: 2025-05-10T15:38:39.670Z (24 days ago)
- Language: TypeScript
- Size: 528 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- Funding: .github/FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
README
# typedoc-plugin-custom-validation
[](https://www.npmjs.com/package/typedoc-plugin-custom-validation)
[](https://github.com/RebeccaStevens/typedoc-plugin-custom-validation/actions/workflows/release.yml)
[](https://codecov.io/gh/RebeccaStevens/typedoc-plugin-custom-validation)\
[](https://github.com/prettier/prettier)
[](https://github.com/RebeccaStevens/typedoc-plugin-custom-validation/discussions)
[](https://opensource.org/licenses/BSD-3-Clause)
[](https://commitizen.github.io/cz-cli/)
[](https://github.com/semantic-release/semantic-release)## Donate
[Any donations would be much appreciated](./DONATIONS.md). 😄
## Installation
```sh
# Install with npm
npm install -D typedoc-plugin-custom-validation# Install with pnpm
pnpm add -D typedoc-plugin-custom-validation# Install with yarn
yarn add -D typedoc-plugin-custom-validation
```## Usage
All options are configured in the `customValidation` option.
### `byKind`
This option is for specifying requirements for each kind of node.
Example: Require all functions to have a summary and have an `@example` tag.
```json
{
"plugin": ["typedoc-plugin-custom-validation"],
"customValidation": {
"byKind": [
{
"kinds": "Function",
"summary": true,
"tags": ["example"]
}
]
}
}
```### My Tags Don't Exists?
Due to the way typedoc works, some tags may be move to other nodes than the one they were defined on.
For example, `@param` tags are removed from the `Function` node they are defined on and its content is put onto the
corresponding `Parameter` node. You can require parameters to be documented with:```json
{
"plugin": ["typedoc-plugin-custom-validation"],
"customValidation": {
"byKind": [
{
"kinds": "Parameter",
"summary": true
}
]
}
}
```