hexo-typescript-api-box

0.9.2 • Public • Published

Typescript API box

Installation

Add this package to your hexo site:

npm install --save hexo-typescript-api-box

Configure this plugin to point it at your docs.json (see below), in _config.yml:

typescript_api_box:
  data_file: docs.json

NOTE: In some cases generated source filepath's, that are used when showing source file links in the API box, can be missing path prefix details. This can happen when following a package based project style, like the one used by lerna. To work around this, use the filepath_prefix config option to add a common path prefix to all generated source filepath's:

typescript_api_box:
  filepath_prefix: packages/apollo-client/src/

Generating docs.json

Add the code you want to document as a submodule:

git submodule add URL_OF_REPO code

Add typedoc (our branch for now, pending https://github.com/TypeStrong/typedoc/pull/266) as a dependency of your project:

npm install --save typedoc@tmeasday/typedoc#add-source-to-json-built

Generate docs.json with an npm script similar to:

"scripts": {
    "build": "cd code; typedoc --json ../docs.json",
    "prestart": "npm run build",
    "start": "hexo serve",
    "predeploy": "npm run build",
    "deploy": "hexo-s3-deploy",
  }

Note that we've added the build script as a prestart and predeploy script which makes sense.

Usage

To use a code reference, use the tsapibox tag:

{% tsapibox ApolloClient.constructor %}

In this version this will be an H3 (nested sidebar entry). We'll probably iterate on this.

Ensure you've added a box for each referenced type, or the links will go nowhere.

Theming

The build HTML is styled by the hexo-theme-meteor.

Readme

Keywords

none

Package Sidebar

Install

npm i hexo-typescript-api-box

Weekly Downloads

1

Version

0.9.2

License

MIT

Unpacked Size

14.4 kB

Total Files

7

Last publish

Collaborators

  • tmeasday
  • calebmer
  • helfer
  • apollo-bot