@vendure-io/docs-generator
v0.1.0
Published
TypeScript API reference docs generator for Vendure packages
Downloads
515
Maintainers
Readme
@vendure-io/docs-generator
TypeScript API reference docs generator for Vendure packages. Parses JSDoc annotations from TypeScript source files and renders MDX documentation pages.
Complements @vendure-io/docs-provider which handles manifest compilation and MDX components.
Usage
import { generateTypescriptDocs, type DocsSectionConfig } from '@vendure-io/docs-generator';
import path from 'node:path';
const sections: DocsSectionConfig[] = [
{
sourceDirs: ['packages/core/src/', 'packages/common/src/'],
exclude: [/generated-types/],
outputPath: 'typescript-api',
},
];
generateTypescriptDocs(sections, {
packagePrefix: '@vendure',
repoRoot: path.resolve(__dirname, '../..'),
outputRoot: path.resolve(__dirname, '../../docs/docs/reference'),
});Configuration
GenerateDocsOptions
| Option | Description |
|---|---|
| packagePrefix | Prefix for derived package names, e.g. '@vendure' produces @vendure/core |
| repoRoot | Absolute path to the repository root |
| outputRoot | Absolute path to the docs output directory |
| docsUrl | Base URL for type hyperlinks (default: '') |
| isWatchMode | Skip deleting previously generated docs before regenerating |
Assumptions
- Source packages are expected to follow a
packages/<name>/directory layout. Package names are derived from this convention.
Supported JSDoc Tags
| Tag | Description |
|---|---|
| @docsCategory | Category path for the declaration (required for inclusion) |
| @docsWeight | Sort weight within category (default: 10) |
| @docsPage | Override page grouping |
| @description | Main documentation text |
| @example | Code examples |
| @default | Default value for properties |
| @internal | Exclude from generated docs |
| @since | Version when introduced |
| @experimental | Mark as experimental |
