From f7bd2ce1a5ef194643b078bd11a90fdf9b389c2b Mon Sep 17 00:00:00 2001 From: Ignat Beresnev Date: Fri, 4 Aug 2023 18:59:28 +0200 Subject: Update Developer Guides (#3088) --- mkdocs/src/doc/docs/community/slack.md | 7 - .../architecture/architecture_overview.md | 123 --------- .../architecture/data_model/documentables.md | 245 ----------------- .../architecture/data_model/extra.md | 99 ------- .../architecture/data_model/page_content.md | 140 ---------- .../extension_points/base_extensions.md | 13 - .../extension_points/core_extensions.md | 151 ----------- .../architecture/extension_points/introduction.md | 163 ----------- .../src/doc/docs/developer_guide/introduction.md | 19 -- .../plugin-development/introduction.md | 72 ----- .../plugin-development/sample-plugin-tutorial.md | 297 --------------------- mkdocs/src/doc/docs/developer_guide/workflow.md | 100 ------- mkdocs/src/doc/docs/dokka_colors.css | 3 - mkdocs/src/doc/docs/favicon.svg | 10 - mkdocs/src/doc/docs/index.md | 9 - .../src/doc/docs/user_guide/output-formats/html.md | 0 mkdocs/src/doc/mkdocs.yml | 85 ------ 17 files changed, 1536 deletions(-) delete mode 100644 mkdocs/src/doc/docs/community/slack.md delete mode 100644 mkdocs/src/doc/docs/developer_guide/architecture/architecture_overview.md delete mode 100644 mkdocs/src/doc/docs/developer_guide/architecture/data_model/documentables.md delete mode 100644 mkdocs/src/doc/docs/developer_guide/architecture/data_model/extra.md delete mode 100644 mkdocs/src/doc/docs/developer_guide/architecture/data_model/page_content.md delete mode 100644 mkdocs/src/doc/docs/developer_guide/architecture/extension_points/base_extensions.md delete mode 100644 mkdocs/src/doc/docs/developer_guide/architecture/extension_points/core_extensions.md delete mode 100644 mkdocs/src/doc/docs/developer_guide/architecture/extension_points/introduction.md delete mode 100644 mkdocs/src/doc/docs/developer_guide/introduction.md delete mode 100644 mkdocs/src/doc/docs/developer_guide/plugin-development/introduction.md delete mode 100644 mkdocs/src/doc/docs/developer_guide/plugin-development/sample-plugin-tutorial.md delete mode 100644 mkdocs/src/doc/docs/developer_guide/workflow.md delete mode 100644 mkdocs/src/doc/docs/dokka_colors.css delete mode 100755 mkdocs/src/doc/docs/favicon.svg delete mode 100644 mkdocs/src/doc/docs/index.md delete mode 100644 mkdocs/src/doc/docs/user_guide/output-formats/html.md delete mode 100644 mkdocs/src/doc/mkdocs.yml (limited to 'mkdocs/src') diff --git a/mkdocs/src/doc/docs/community/slack.md b/mkdocs/src/doc/docs/community/slack.md deleted file mode 100644 index 290d4a18..00000000 --- a/mkdocs/src/doc/docs/community/slack.md +++ /dev/null @@ -1,7 +0,0 @@ -# Slack channel - -`Dokka` has a dedicated `#dokka` channel in the `Kotlin Community Slack`, where you can ask questions and chat -about using, customizing or contributing to `Dokka`. - -[Follow the instructions](https://surveys.jetbrains.com/s3/kotlin-slack-sign-up) -to get an invite or [connect directly](https://kotlinlang.slack.com). diff --git a/mkdocs/src/doc/docs/developer_guide/architecture/architecture_overview.md b/mkdocs/src/doc/docs/developer_guide/architecture/architecture_overview.md deleted file mode 100644 index fb11f32a..00000000 --- a/mkdocs/src/doc/docs/developer_guide/architecture/architecture_overview.md +++ /dev/null @@ -1,123 +0,0 @@ -# Architecture overview - -Normally, you would think that a tool like `Dokka` simply parses some programming language sources and generates -`HTML` pages for whatever it sees along the way, with little to no abstractions. That would be the simplest and -shortest way to implement an API documentation engine. - -However, it was clear that `Dokka` may need to generate documentation from various sources (not only `Kotlin`), that users -might request additional output formats (like `Markdown`), that users might need additional features like supporting -custom `KDoc` tags or rendering `mermaid.js` diagrams - all these things would require changing a lot of code inside -`Dokka` itself if all solutions were hardcoded. - -For this reason, `Dokka` was built from the ground up to be easily extensible and customizable by adding several layers -of abstractions to the data model, and by providing pluggable extension points, giving you the ability to introduce -selective changes on a single level. - -## Overview of data model - -Generating API documentation begins with `Input` source files (`.kts`, `.java`, etc) and ends with some `Output` files -(`.html`/`.md` pages, etc). However, to allow for extensibility and customization, several input and output independent -abstractions have been added to the data model. - -Below you can find the general pipeline of processing data gathered from sources and the explanation for each stage. - -```mermaid -flowchart TD - Input --> Documentables --> Pages --> Output -``` - -* `Input` - generalization of sources, by default `Kotlin`/`Java` sources, but could be virtually anything -* `Documentables` - unified data model that represents _any_ parsed sources as a tree, independent of the source - language. Examples of a `Documentable`: class, function, package, property, etc -* `Pages` - universal model that represents output pages (e.g a function/property page) and the content it's composed of - (lists, text, code blocks) that the users needs to see. Not to be confused with `.html` pages. Goes hand in hand - with so-called `Content` model. -* `Output` - specific output format like `HTML`/`Markdown`/`Javadoc`/etc. This is a mapping of pages/content model to - some human-readable and visual representation. For instance: - * `PageNode` is mapped as - * `.html` file for `HTML` format - * `.md` file for `Markdown` format - * `ContentList` is mapped as - * `
  • ` / `