Dokka community plugins¶
On this page you can find Dokka
plugins which are supported by both Dokka
maintainers and community members.
If you want to add your plugin to this list, get in touch with maintainers via Slack
or GitHub
.
If you want to learn how to develop plugins for Dokka
, see
Plugin development section.
Output Formats¶
Javadoc (Alpha)¶
Javadoc plugin adds a Javadoc
output format that looks like Java's Javadoc
, but it's for the most part
a lookalike, so you may experience problems if you try to use it with a tool that expects native
Javadoc
documentation generated by Java
.
Javadoc
plugin does not support multiplatform projects and does not have a multi-module task.
Javadoc
plugin is shipped with Dokka
, so you can start using it right away with one of the following tasks:
dokkaJavadoc
- buildsJavadoc
documentation for single-module projects or for a specific module.dokkaJavadocCollector
- collects generatedJavadoc
documentation from submodules and assembles it together.
Javadoc
plugin has its own signature provider that essentially translates Kotlin
signatures to Java
ones.
This plugin is at its early stages, so you may experience issues and encounter bugs. Feel free to report any errors you see.
GFM (Alpha)¶
GFM
plugins adds the ability to generate documentation in GitHub flavoured Markdown
format. Supports both
multimodule and multiplatform projects, and is shipped together with Dokka
, so you can start using it
right away with one of the following tasks:
dokkaGfm
- generate documentation for a non multi-module project or one specific module.dokkaGfmMultiModule
- generate documentation for a multi-module project, assemble it together and generate navigation page/menu for all the modules.
Example:
//dokka-debug-kts/org.jetbrains.dokka.test/MyClass
MyClass¶
[jvm] class MyClass
KDoc that describes this class
Constructors¶
MyClass | [jvm] fun MyClass() |
Functions¶
Name | Summary |
---|---|
function | [jvm] fun function(): String KDoc comment on top of this function |
Properties¶
Name | Summary |
---|---|
property | [jvm] val property: String KDoc comment for a property |
This plugin is at its early stages, so you may experience issues and encounter bugs. Feel free to report any errors you see.
Jekyll (Alpha)¶
Jekyll
plugins adds the ability to generate documentation in Jekyll flavoured Markdown
format. Supports both
multi-module and multiplatform projects, and is shipped together with Dokka
, so you can start using it
right away with one of the following tasks:
dokkaJekyll
- generate documentation for a non multi-module project or one specific module.dokkaJekyllMultiModule
- generate documentation for a multi-module project, assemble it together and generate navigation page/menu for all the modules.
This plugin is at its early stages, so you may experience issues and encounter bugs. Feel free to report any errors you see.
Extensions¶
Mathjax¶
MathJax allows you to include mathematics in your web pages. MathJax
plugin
adds the ability to render mathematics from source code comments.
If MathJax
plugin encounters @usesMathJax
KDoc
tag, it adds MathJax.js
(ver. 2) with config=TeX-AMS_SVG
to generated HTML
pages.
Usage example:
/**
* Some math \(\sqrt{3x-1}+(1+x)^2\)
*
* @usesMathJax
*/
class Foo {}
Which results in:
Mermaid¶
Mermaid JS lets you create diagrams and visualizations using text and code.
Mermaid
plugin allows rendering such diagrams and visualizations found in source code documentation.
Usage example:
/**
* See the graph for more details:
* \```mermaid
* graph LR
* A[Christmas] -->|Get money| B(Go shopping)
* B --> C{Let me think}
* C -->|One| D[Laptop]
* C -->|Two| E[iPhone]
* C -->|Three| F[fa:fa-car Car]
* \```
*/
class CompositeSubscription
Which results in:
For more information and examples, see Html Mermaid Dokka plugin repository on GitHub.
Kotlin as Java¶
With Kotlin as Java
plugin applied, all Kotlin
signatures will be rendered as Java
signatures.
For instance, fun foo(bar: Bar): Baz
will be rendered as public final Baz foo(Bar bar)
.
Kotlin as Java
plugin is published to maven central as a
separate artifact:
org.jetbrains.dokka:kotlin-as-java-plugin:1.7.20
.