0.11.1 • Published 3 years ago
@jiereal/vuepress-plugin-typedoc v0.11.1
vuepress-plugin-typedoc
A VuePress plugin to build API documentation with typedoc.
What it does?
- Generates pages in Markdown as part of the build.
- Generates sidebar configuration.
Installation
Install in the same location as your VuePress project root.
npm install typedoc @jiereal/typedoc-plugin-markdown @jiereal/vuepress-plugin-typedoc --save-devUsage
v1.x
- Setup a VuePress project https://v1.vuepress.vuejs.org/guide/getting-started.html.
- Add the plugin to
.vuepress/config.jsand specify the required options (see options). - TypeDoc will be bootstraped with the Vuepress
devandbuildcli commands.
.vuepress/config.js
plugins: [
[
'@jiereal/vuepress-plugin-typedoc',
// plugin options
{
entryPoints: ['../src/index.ts'],
tsconfig: '../tsconfig.json'
},
],
],v2.x
- Setup a VuePress v2 project https://v2.vuepress.vuejs.org/guide/getting-started.html.
- Using a plugin via string is not supported. Import the plugin directly in
.vuepress/config.tsunder thenextentrypoint and specify the required options (see options). - TypeDoc will be bootstraped with the Vuepress
devandbuildcli commands.
.vuepress/config.ts
import { defaultTheme } from 'vuepress';
import { typedocPlugin } from 'vuepress-plugin-typedoc/next';
module.exports = {
theme: defaultTheme({}),
plugins: [
typedocPlugin({
// plugin options
entryPoints: ['../src/index.ts'],
tsconfig: '../tsconfig.json',
}),
],
};Typical project structure
docs/ (Vuepress website root)
│ └── .vuepress
│ │ └── config.js|ts
│ │ └── dist/ (static site dir)
│ └── api/ (output directory / compiled typedoc markdown)
├── package.json
├─ ─src (typescript source files)
├── tsconfig.jsonOptions
TypeDoc options
To configure TypeDoc, pass any relevant TypeDoc options to the config.
At a minimum the entryPoints and tsconfig options will need to be set.
entryPoints: ['../src/index.ts'],
tsconfig: '../tsconfig.json'Additional TypeDoc plugins will need to be explicitly set:
plugin: ['typedoc-plugin-xyz'];TypeDoc options can also be declared:
- Using a
typedoc.jsonfile. - Under the
typedocOptionskey intsconfig.json.
Note: Options declared in this manner will take priority and overwrite options declared in docusaurus.config.js.
Plugin options
In addition to TypeDoc options there are some custom plugin options that can be configured.
| Name | Default | Description |
|---|---|---|
out | "api" | Output directory relative to docs directory. |
hideInPageTOC | false | Do not render in-page table of contents items. |
sidebar.autoConfiguration | true | Set to false to disable auto sidebar configuration. |
sidebar.fullNames | false | Display full names with module path if applicable. |
sidebar.parentCategory | "API" | The parent category label for sidebar. Pass "none" for no parent category. |
Example options object
{
// TypeDoc options
entryPoints: ['../src/index.ts'],
tsconfig: '../tsconfig.json',
cleanOutputDir: true
// Plugin options
out: 'api',
sidebar: {
fullNames: true,
parentCategory: 'API',
}
}License
0.11.1
3 years ago