Docs
Migration Guide V4

🚀 Migration Guide V4

💡

v4 is a major release that includes a number of bug fixes, new features and UX improvements.

🏗 Architectural Changes

  • Handlebars as a dependency has been removed.
  • Updated customization model with the ability to set hooks, events and custom theming.
  • Improved test and linting coverage.

🌟 New Features

  • Updated output file structure.
  • Improved and cleaner UX configurable with options.
  • Exported option types and JSON schema.
  • Exposed navigation structure.
  • Ability to customize static text.
  • Comprehensive documentation and examples repository.

🏗️ Non-Breaking Changes

  • Each module member is now output to its own file by default. See outputFileStrategy. To achieve the same output as v3 (whereby only Classes, Enums and Interfaces have their own file), set the membersWithOwnFile option.
  • Parameters are output as a list by default. To achieve the same output as v3 (where parameters are output as a table), use parametersFormat=table.
  • Comment @ tags are now displayed as headings.

💥 Breaking Changes

  • The output file structure has changed so you may need to update any cross references into your docs from external sources.
  • Setting theme to "markdown" is not required and should be removed.
  • The option indexTitle has been removed. Please use the "title.indexPage" key with textContentMappings.
  • The option allReflectionsHaveOwnDocument has been removed (this behaviour is now the default). Please see See outputFileStrategy.
  • The option entryDocument has been renamed to entryFileName to better reflect its purpose.
  • The option namedAnchors has been renamed to useHTMLAnchors to better reflect its purpose.
  • The option hideInPageTOC has been removed. In-page TOC are no longer included by default. You can include in-page TOCs by using typedoc-plugin-remark and the remark-toc plugin.
  • The option objectLiteralTypeDeclarationStyle has been removed. Please use typeDeclarationFormat=list.

🗨️ Feedback

Feedback on the this release is welcome and encouraged. If you’d like to report a bug, raise a feature request or have any questions, please open an issue.

👍 Thank You

A big thank you to all the members of the community who helped make this release possible with direct contributions and providing invaluable user testing and feedback!