angular-docs-cn/aio/tools/transforms
George Kalpakas 35fdc6d92f build(docs-infra): ignore `doc.basePath` when generating keywords for each document (#39409)
The `generateKeywords` dgeni processor automatically generates keywords
for each document by extracting words from each string property of a
`doc` object.

This commit adds `basePath` to the list of ignored properties, so that
it is _not_ considered when generating keywords. `basePath` mostly
contains the path to some root directory (such as
`/home/circleci/ng/packages`) and as such it does not contain useful
keywords.

For example, searching for `circleci` will match all API docs, because
it happens to be in the `basePath`:
https://v10.angular.io/?search=circleci

PR Close #39409
2020-10-26 10:52:00 -07:00
..
angular-api-package build: update license headers to reference Google LLC (#37205) 2020-05-26 14:26:58 -04:00
angular-base-package build(docs-infra): ignore `doc.basePath` when generating keywords for each document (#39409) 2020-10-26 10:52:00 -07:00
angular-content-package feat(docs-infra): created new widget for events page (#36517) 2020-09-16 15:14:18 -07:00
angular.io-package build: update license headers to reference Google LLC (#37205) 2020-05-26 14:26:58 -04:00
authors-package fix(platform-webworker): remove platform-webworker and platform-webworker-dynamic (#38846) 2020-09-30 09:13:59 -04:00
cli-docs-package fix(docs-infra): correctly generate CLI commands docs when the overview page moves (#38365) 2020-08-06 11:41:05 -07:00
content-package
examples-package
helpers build: update license headers to reference Google LLC (#37205) 2020-05-26 14:26:58 -04:00
links-package
remark-package
target-package
templates docs: fix for HttpRequest expansion panel (#39166) 2020-10-08 09:38:09 -07:00
.eslintignore
.eslintrc.js
README.md docs(docs-infra): apply the one-sentence-per-line rule to Markdown files in `aio/tools/` (#38992) 2020-09-30 09:20:00 -04:00
config.js
test.js

README.md

Overview

All the content that is rendered by the AIO application, and some of its configuration files, are generated from source files by Dgeni. Dgeni is a general purpose documentation generation tool.

Markdown files in /aio/content, code comments in the core Angular source files and example files are processed and transformed into files that are consumed by the AIO application.

Dgeni is configured by "packages", which contain services and processors. Some of these packages are installed as node_modules from the dgeni-packages and some are specific to the AIO project.

The project specific packages are stored in this folder (aio/tools/transforms).

If you are an author and want to know how to generate the documentation, the steps are outlined in the top level README.md.

Root packages

To run Dgeni, you must specify a root package, which acts as the entry point to the documentation generation. This root package, in turn requires a number of other packages, some are defined locally in the tools/transforms folder, such as tools/transforms/cheatsheet-package and tools/transforms/content-package, etc. And some are brought in from the dgeni-packages node modules, such as jsdoc and nunjucks.

  • The primary root package is defined in tools/transforms/angular.io-package/index.js. This package is used to run a full generation of all the documentation.
  • There are also root packages defined in tools/transforms/authors-package/*-package.js. These packages are used by the documentation authors when writing docs, since it allows them to run partial doc generation, which is not complete but is faster for quickly seeing changes to the document that you are working on.

Other packages

  • angular-base-package
  • angular-api-package
  • angular-content-package
  • content-package
  • examples-package
  • links-package
  • post-process-package
  • remark-package
  • target-package

Templates

All the templates for the angular.io dgeni transformations are stoted in the tools/transforms/templates folder. See the README.