diff --git a/src/net/sourceforge/plantuml/abel/package-info.java b/src/net/sourceforge/plantuml/abel/package-info.java
index a22acf5cf..d19894ec5 100644
--- a/src/net/sourceforge/plantuml/abel/package-info.java
+++ b/src/net/sourceforge/plantuml/abel/package-info.java
@@ -1,6 +1,6 @@
/**
* Provides classes used to manage {@link Entity}.
*
- * @see {@link net.sourceforge.plantuml.plasma}
+ * @see net.sourceforge.plantuml.plasma
*/
package net.sourceforge.plantuml.abel;
diff --git a/src/net/sourceforge/plantuml/acearth/package-info.java b/src/net/sourceforge/plantuml/acearth/package-info.java
index f3af0dc2a..ff8536d87 100644
--- a/src/net/sourceforge/plantuml/acearth/package-info.java
+++ b/src/net/sourceforge/plantuml/acearth/package-info.java
@@ -3,6 +3,6 @@
*
* XEarth Image.
*
- * @see {@link ext.plantuml.com.ctreber.acearth}
+ * @see ext.plantuml.com.ctreber.acearth
*/
package net.sourceforge.plantuml.acearth;
diff --git a/src/net/sourceforge/plantuml/activitydiagram/package-info.java b/src/net/sourceforge/plantuml/activitydiagram/package-info.java
index 219b26543..430c2b776 100644
--- a/src/net/sourceforge/plantuml/activitydiagram/package-info.java
+++ b/src/net/sourceforge/plantuml/activitydiagram/package-info.java
@@ -4,7 +4,7 @@
* Activity Diagram (legacy).
*
*
- * For new syntax see {@link net/sourceforge/plantuml/activitydiagram3}
+ * For new syntax see {@link net.sourceforge.plantuml.activitydiagram3}
* and
*
* Activity Diagram (New Syntax).
diff --git a/src/net/sourceforge/plantuml/argon2/package-info.java b/src/net/sourceforge/plantuml/argon2/package-info.java
index 13f96fd1f..ae7430091 100644
--- a/src/net/sourceforge/plantuml/argon2/package-info.java
+++ b/src/net/sourceforge/plantuml/argon2/package-info.java
@@ -22,5 +22,7 @@
*
*
*
+ * @see net.sourceforge.plantuml.argon2.blake2
+ *
*/
package net.sourceforge.plantuml.argon2;
diff --git a/src/net/sourceforge/plantuml/code/package-info.java b/src/net/sourceforge/plantuml/code/package-info.java
index ab99d1cc9..184c04950 100644
--- a/src/net/sourceforge/plantuml/code/package-info.java
+++ b/src/net/sourceforge/plantuml/code/package-info.java
@@ -1,9 +1,9 @@
/**
* Provides classes used to manage Coding and Compression.
*
- * @see {@link net.sourceforge.plantuml.brotli}
- * @see {@link net.sourceforge.plantuml.code.deflate}
- * @see {@link net.sourceforge.plantuml.zopfli}
+ * @see net.sourceforge.plantuml.brotli
+ * @see net.sourceforge.plantuml.code.deflate
+ * @see net.sourceforge.plantuml.zopfli
*
*/
package net.sourceforge.plantuml.code;
diff --git a/src/net/sourceforge/plantuml/command/package-info.java b/src/net/sourceforge/plantuml/command/package-info.java
index e78b77344..0e7d145c0 100644
--- a/src/net/sourceforge/plantuml/command/package-info.java
+++ b/src/net/sourceforge/plantuml/command/package-info.java
@@ -1,7 +1,9 @@
/**
- * Provides classes used to manage PlantUML End User Common Command.
- *
- * @see {@link net.sourceforge.plantuml.regex}
+ * Provides classes used to manage
+ *
+ * PlantUML End User Common Commands.
+ *
+ * @see net.sourceforge.plantuml.regex
*
*/
package net.sourceforge.plantuml.command;
diff --git a/src/net/sourceforge/plantuml/command/readme.md b/src/net/sourceforge/plantuml/command/readme.md
index 77edda8be..0ab92bdc4 100644
--- a/src/net/sourceforge/plantuml/command/readme.md
+++ b/src/net/sourceforge/plantuml/command/readme.md
@@ -1,9 +1,10 @@
# Directory Documentation for `command`
## Description
-This package provides classes used to manage PlantUML End User Common Command.
+This package provides classes used to manage [PlantUML End User Common Commands](https://plantuml.com/commons).
## Link
+- [Common Commands in PlantUML](https://plantuml.com/commons)
## Reference
diff --git a/src/net/sourceforge/plantuml/dedication/package-info.java b/src/net/sourceforge/plantuml/dedication/package-info.java
new file mode 100644
index 000000000..4514abb49
--- /dev/null
+++ b/src/net/sourceforge/plantuml/dedication/package-info.java
@@ -0,0 +1,7 @@
+/**
+ * Provides classes used to manage
+ *
+ * Dedication.
+ *
+ */
+package net.sourceforge.plantuml.dedication;
diff --git a/src/net/sourceforge/plantuml/dedication/readme.md b/src/net/sourceforge/plantuml/dedication/readme.md
new file mode 100644
index 000000000..88f9ddca6
--- /dev/null
+++ b/src/net/sourceforge/plantuml/dedication/readme.md
@@ -0,0 +1,13 @@
+# Directory Documentation for `dedication`
+
+## Description
+This package provides classes used to manage [PlantUML Dedication](https://plantuml.com/dedication).
+
+## Link
+- [Dedication](https://plantuml.com/dedication)
+
+## Reference
+
+## Credit
+
+## Misc.
diff --git a/src/net/sourceforge/plantuml/definition/package-info.java b/src/net/sourceforge/plantuml/definition/package-info.java
new file mode 100644
index 000000000..55b1b49df
--- /dev/null
+++ b/src/net/sourceforge/plantuml/definition/package-info.java
@@ -0,0 +1,7 @@
+/**
+ * Provides classes used to manage
+ *
+ * Definition Diagram.
+ *
+ */
+package net.sourceforge.plantuml.definition;
diff --git a/src/net/sourceforge/plantuml/definition/readme.md b/src/net/sourceforge/plantuml/definition/readme.md
new file mode 100644
index 000000000..59ed98b42
--- /dev/null
+++ b/src/net/sourceforge/plantuml/definition/readme.md
@@ -0,0 +1,14 @@
+# Directory Documentation for `definition`
+
+## Description
+This package provides classes used to manage [PlantUML Definition Diagram](https://plantuml.com/en/sources#dd263f8f99d9d776).
+
+## Link
+
+## Reference
+- [QA-5769](https://forum.plantuml.net/5769/please-provide-way-include-blocks-code-from-file-into-itself)
+
+## Credit
+
+## Misc.
+
diff --git a/src/net/sourceforge/plantuml/descdiagram/package-info.java b/src/net/sourceforge/plantuml/descdiagram/package-info.java
new file mode 100644
index 000000000..b423becc1
--- /dev/null
+++ b/src/net/sourceforge/plantuml/descdiagram/package-info.java
@@ -0,0 +1,22 @@
+/**
+ * Provides classes used to manage PlantUML Description Diagram.
+ *
+ *
+ * The PlantUML Description Diagrams are:
+ *
+ *
+ */
+package net.sourceforge.plantuml.descdiagram;
diff --git a/src/net/sourceforge/plantuml/descdiagram/readme.md b/src/net/sourceforge/plantuml/descdiagram/readme.md
new file mode 100644
index 000000000..af435ec67
--- /dev/null
+++ b/src/net/sourceforge/plantuml/descdiagram/readme.md
@@ -0,0 +1,19 @@
+# Directory Documentation for `descdiagram`
+
+## Description
+This package provides classes used to manage PlantUML Description Diagram:
+- [Use Case Diagram](https://plantuml.com/use-case-diagram)
+- [Component Diagram](https://plantuml.com/component-diagram)
+- [Deployment Diagram](https://plantuml.com/deployment-diagram)
+- [Archimate Diagram](https://plantuml.com/archimate-diagram)
+- [Problem Diagram](http://alphadoc.plantuml.com/doc/markdown/en/problem-diagram)
+- [Object Diagram](https://plantuml.com/object-diagram)
+
+## Reference
+- [Architecture description language _(on Wikipedia)_](https://en.wikipedia.org/wiki/Architecture_description_language)
+- [Software architecture description _(on Wikipedia)_](https://en.wikipedia.org/wiki/Software_architecture_description)
+
+## Credit
+
+## Misc.
+
diff --git a/src/net/sourceforge/plantuml/directdot/package-info.java b/src/net/sourceforge/plantuml/directdot/package-info.java
new file mode 100644
index 000000000..fa2a7cef1
--- /dev/null
+++ b/src/net/sourceforge/plantuml/directdot/package-info.java
@@ -0,0 +1,7 @@
+/**
+ * Provides classes used to manage
+ *
+ * Dot Diagram.
+ *
+ */
+package net.sourceforge.plantuml.directdot;
diff --git a/src/net/sourceforge/plantuml/directdot/readme.md b/src/net/sourceforge/plantuml/directdot/readme.md
new file mode 100644
index 000000000..b446d9bf0
--- /dev/null
+++ b/src/net/sourceforge/plantuml/directdot/readme.md
@@ -0,0 +1,15 @@
+# Directory Documentation for `directdot`
+
+## Description
+This package provides classes used to manage [PlantUML Dot Diagram](https://plantuml.com/dot).
+
+## Link
+- [Dot Diagram](https://plantuml.com/dot)
+
+## Reference
+- [Graphviz DOT Language](https://www.graphviz.org/doc/info/lang.html)
+
+## Credit
+
+## Misc.
+
diff --git a/src/net/sourceforge/plantuml/ditaa/package-info.java b/src/net/sourceforge/plantuml/ditaa/package-info.java
new file mode 100644
index 000000000..0246431ab
--- /dev/null
+++ b/src/net/sourceforge/plantuml/ditaa/package-info.java
@@ -0,0 +1,8 @@
+/**
+ * Provides classes used to manage
+ *
+ * Ditaa Diagram.
+ *
+ * @see org.stathissideris.ascii2image
+ */
+package net.sourceforge.plantuml.ditaa;
diff --git a/src/net/sourceforge/plantuml/ditaa/readme.md b/src/net/sourceforge/plantuml/ditaa/readme.md
new file mode 100644
index 000000000..6c23b94a3
--- /dev/null
+++ b/src/net/sourceforge/plantuml/ditaa/readme.md
@@ -0,0 +1,16 @@
+# Directory Documentation for `ditaa`
+
+## Description
+This package provides classes used to manage [PlantUML Ditaa Diagram](https://plantuml.com/ditaa).
+
+## Link
+- [Ditaa Diagram](https://plantuml.com/ditaa)
+
+## Reference
+
+## Credit
+- [`org.stathissideris.ascii2image`](../../../../org/stathissideris/ascii2image) _(included in PlantUML)_
+- [:octocat:stathissideris/ditaa](https://github.com/stathissideris/ditaa)
+
+## Misc.
+
diff --git a/src/net/sourceforge/plantuml/donors/package-info.java b/src/net/sourceforge/plantuml/donors/package-info.java
new file mode 100644
index 000000000..8514f7180
--- /dev/null
+++ b/src/net/sourceforge/plantuml/donors/package-info.java
@@ -0,0 +1,9 @@
+/**
+ * Provides classes used to manage
+ *
+ * Donors and
+ *
+ * Skinparameter Lists.
+ *
+ */
+package net.sourceforge.plantuml.donors;
diff --git a/src/net/sourceforge/plantuml/donors/readme.md b/src/net/sourceforge/plantuml/donors/readme.md
new file mode 100644
index 000000000..4f8e72b75
--- /dev/null
+++ b/src/net/sourceforge/plantuml/donors/readme.md
@@ -0,0 +1,17 @@
+# Directory Documentation for `donors`
+
+## Description
+This package provides classes used to manage:
+- [PlantUML Donors List](https://plantuml.com/donors)
+- [PlantUML Skinparameter List](https://plantuml.com/skinparam)
+
+## Link
+- [PlantUML Donors](https://plantuml.com/donors)
+- [PlantUML Skinparameter](https://plantuml.com/skinparam)
+
+## Reference
+
+## Credit
+
+## Misc.
+
diff --git a/src/net/sourceforge/plantuml/dot/package-info.java b/src/net/sourceforge/plantuml/dot/package-info.java
new file mode 100644
index 000000000..a4efda1a3
--- /dev/null
+++ b/src/net/sourceforge/plantuml/dot/package-info.java
@@ -0,0 +1,7 @@
+/**
+ * Provides classes used to manage
+ *
+ * Graphviz dot for layout engine.
+ *
+ */
+package net.sourceforge.plantuml.dot;
diff --git a/src/net/sourceforge/plantuml/dot/readme.md b/src/net/sourceforge/plantuml/dot/readme.md
new file mode 100644
index 000000000..a543cc570
--- /dev/null
+++ b/src/net/sourceforge/plantuml/dot/readme.md
@@ -0,0 +1,19 @@
+# Directory Documentation for `dot`
+
+## Description
+This package provides classes used to export diagram with the [Graphviz dot](https://plantuml.com/graphviz-dot) layout engine.
+
+## Link
+- [Graphviz dot](https://plantuml.com/graphviz-dot)
+
+## Reference
+- [Graphviz](https://graphviz.org)
+- [Graphviz _(on GitLab)_](https://gitlab.com/graphviz/graphviz/)
+
+## See also other engines
+- [PlantUML 'Eclipse Layout Kernel (ELK)' Engine](https://plantuml.com/elk)
+ - [Eclipse Layout Kernel (ELK)](https://eclipse.dev/elk/)
+- [Smetana _(internal port of GraphViz in plantuml)_](https://plantuml.com/smetana02) and [:octocat:plantuml/smetana](https://github.com/plantuml/smetana)
+ - [`src/gen`](../../../../gen)
+ - [`src/smetana/core`](../../../../smetana/core)
+ - [`src/h`](../../../../h)
diff --git a/src/net/sourceforge/plantuml/ebnf/readme.md b/src/net/sourceforge/plantuml/ebnf/readme.md
index 41d9366a3..450626866 100644
--- a/src/net/sourceforge/plantuml/ebnf/readme.md
+++ b/src/net/sourceforge/plantuml/ebnf/readme.md
@@ -8,8 +8,9 @@ This package provides classes used to manage [Extended Backus–Naur Form (EBNF)
## Reference
- [Extended Backus–Naur Form (EBNF) _(on Wikipedia)_](https://en.wikipedia.org/wiki/Extended_Backus%E2%80%93Naur_form)
+- [ISO/IEC 14977 : 1996(E)](http://www.cl.cam.ac.uk/~mgk25/iso-14977.pdf)
## Credit
## Misc.
-
+- [Shunting yard algorithm](https://en.wikipedia.org/wiki/Shunting_yard_algorithm)
diff --git a/src/net/sourceforge/plantuml/eggs/package-info.java b/src/net/sourceforge/plantuml/eggs/package-info.java
new file mode 100644
index 000000000..4b918d842
--- /dev/null
+++ b/src/net/sourceforge/plantuml/eggs/package-info.java
@@ -0,0 +1,5 @@
+/**
+ * Provides classes used to manage PlantUML Easter Eggs.
+ *
+ */
+package net.sourceforge.plantuml.eggs;
diff --git a/src/net/sourceforge/plantuml/eggs/readme.md b/src/net/sourceforge/plantuml/eggs/readme.md
new file mode 100644
index 000000000..ca82cb317
--- /dev/null
+++ b/src/net/sourceforge/plantuml/eggs/readme.md
@@ -0,0 +1,14 @@
+# Directory Documentation for `eggs`
+
+## Description
+This package provides classes used to manage PlantUML Easter Eggs.
+
+## Link
+
+## Reference
+- [Easter egg _(on Wikipedia)_](https://en.wikipedia.org/wiki/Easter_egg_(media))
+
+## Credit
+
+## Misc.
+
diff --git a/src/net/sourceforge/plantuml/elk/package-info.java b/src/net/sourceforge/plantuml/elk/package-info.java
new file mode 100644
index 000000000..eaba9ff58
--- /dev/null
+++ b/src/net/sourceforge/plantuml/elk/package-info.java
@@ -0,0 +1,9 @@
+/**
+ * Provides classes used to manage
+ *
+ * Eclipse Layout Kernel (ELK) for layout engine.
+ *
+ * @see net.sourceforge.plantuml.elk.proxy
+ *
+ */
+package net.sourceforge.plantuml.elk;
diff --git a/src/net/sourceforge/plantuml/elk/readme.md b/src/net/sourceforge/plantuml/elk/readme.md
new file mode 100644
index 000000000..83c4fdae7
--- /dev/null
+++ b/src/net/sourceforge/plantuml/elk/readme.md
@@ -0,0 +1,23 @@
+# Directory Documentation for `elk`
+
+## Description
+This package provides classes used to export diagram with the [Eclipse Layout Kernel (ELK)](https://plantuml.com/elk) layout engine.
+
+## Link
+- [PlantUML "Eclipse Layout Kernel (ELK)" Engine](https://plantuml.com/elk)
+
+## Reference
+- [Eclipse Layout Kernel (ELK)](https://eclipse.dev/elk/)
+- [ELK Documentation](https://eclipse.dev/elk/documentation.html)
+
+## Credit
+- [`elk/proxy`](./proxy/) _(included in PlantUML)_
+- [:octocat:eclipse/elk](https://github.com/eclipse/elk)
+
+## See also other engines
+- [GraphViz dot](https://plantuml.com/graphviz-dot)
+ - [`plantuml/dot`](../dot/)
+- [Smetana _(internal port of GraphViz in plantuml)_](https://plantuml.com/smetana02) and [:octocat:plantuml/smetana](https://github.com/plantuml/smetana)
+ - [`src/gen`](../../../../gen)
+ - [`src/smetana/core`](../../../../smetana/core)
+ - [`src/h`](../../../../h)
diff --git a/src/net/sourceforge/plantuml/error/package-info.java b/src/net/sourceforge/plantuml/error/package-info.java
new file mode 100644
index 000000000..22c6aa558
--- /dev/null
+++ b/src/net/sourceforge/plantuml/error/package-info.java
@@ -0,0 +1,5 @@
+/**
+ * Provides classes used to manage Error.
+ *
+ */
+package net.sourceforge.plantuml.error;
diff --git a/src/net/sourceforge/plantuml/error/readme.md b/src/net/sourceforge/plantuml/error/readme.md
new file mode 100644
index 000000000..6ccef460f
--- /dev/null
+++ b/src/net/sourceforge/plantuml/error/readme.md
@@ -0,0 +1,4 @@
+# Directory Documentation for `error`
+
+## Description
+This package provides classes used to manage Error.
diff --git a/src/net/sourceforge/plantuml/font/package-info.java b/src/net/sourceforge/plantuml/font/package-info.java
new file mode 100644
index 000000000..53bdbcd07
--- /dev/null
+++ b/src/net/sourceforge/plantuml/font/package-info.java
@@ -0,0 +1,7 @@
+/**
+ * Provides classes used to manage
+ *
+ * Font list.
+ *
+ */
+package net.sourceforge.plantuml.font;
diff --git a/src/net/sourceforge/plantuml/font/readme.md b/src/net/sourceforge/plantuml/font/readme.md
new file mode 100644
index 000000000..b5a80bfe7
--- /dev/null
+++ b/src/net/sourceforge/plantuml/font/readme.md
@@ -0,0 +1,4 @@
+# Directory Documentation for `font`
+
+## Description
+This package provides classes used to manage [Font List](https://plantuml.com/font).
diff --git a/src/net/sourceforge/plantuml/ftp/package-info.java b/src/net/sourceforge/plantuml/ftp/package-info.java
new file mode 100644
index 000000000..8ca5be51d
--- /dev/null
+++ b/src/net/sourceforge/plantuml/ftp/package-info.java
@@ -0,0 +1,7 @@
+/**
+ * Provides classes used to manage
+ *
+ * FTP server.
+ *
+ */
+package net.sourceforge.plantuml.ftp;
diff --git a/src/net/sourceforge/plantuml/ftp/readme.md b/src/net/sourceforge/plantuml/ftp/readme.md
new file mode 100644
index 000000000..d7937f21f
--- /dev/null
+++ b/src/net/sourceforge/plantuml/ftp/readme.md
@@ -0,0 +1,11 @@
+# Directory Documentation for `ftp`
+
+## Description
+This package provides classes used to manage a [FTP](https://plantuml.com/ftp) server.
+
+## Link
+- [PlantUML FTP server](https://plantuml.com/ftp)
+
+## Reference
+- [QA-9235](https://forum.plantuml.net/9235/unexpected-ftp-session)
+
diff --git a/src/net/sourceforge/plantuml/graphml/package-info.java b/src/net/sourceforge/plantuml/graphml/package-info.java
new file mode 100644
index 000000000..2732cbe4e
--- /dev/null
+++ b/src/net/sourceforge/plantuml/graphml/package-info.java
@@ -0,0 +1,5 @@
+/**
+ * Provides classes used to manage Graphml output format.
+ *
+ */
+package net.sourceforge.plantuml.graphml;
diff --git a/src/net/sourceforge/plantuml/graphml/readme.md b/src/net/sourceforge/plantuml/graphml/readme.md
new file mode 100644
index 000000000..4572cd1da
--- /dev/null
+++ b/src/net/sourceforge/plantuml/graphml/readme.md
@@ -0,0 +1,16 @@
+# Directory Documentation for `graphml`
+
+## Description
+This package provides classes used to export diagram to a Graphml output format.
+
+## Link
+- https://github.com/plantuml/plantuml/commit/a195b4e842b6775ea80a79f43218a0e9c905e406
+- [`graphml` search results on `plantuml/plantuml`](https://github.com/search?q=repo%3Aplantuml%2Fplantuml+graphml&type=code)
+- [QA-5307](https://forum.plantuml.net/5307/export-to-graphml)
+
+## Reference
+- [GraphML _(on Wikipedia)_](https://en.wikipedia.org/wiki/GraphML)
+
+
+## See also
+- ["Generic Model Export" on `graphml` branch](https://github.com/plantuml/plantuml/blob/graphml/src/net/sourceforge/plantuml/graphml/docs/overview.md)
\ No newline at end of file
diff --git a/src/net/sourceforge/plantuml/hcl/package-info.java b/src/net/sourceforge/plantuml/hcl/package-info.java
new file mode 100644
index 000000000..7fe2a12e1
--- /dev/null
+++ b/src/net/sourceforge/plantuml/hcl/package-info.java
@@ -0,0 +1,7 @@
+/**
+ * Provides classes used to manage
+ *
+ * HCL diagram.
+ *
+ */
+package net.sourceforge.plantuml.hcl;
diff --git a/src/net/sourceforge/plantuml/hcl/readme.md b/src/net/sourceforge/plantuml/hcl/readme.md
new file mode 100644
index 000000000..d1d522898
--- /dev/null
+++ b/src/net/sourceforge/plantuml/hcl/readme.md
@@ -0,0 +1,15 @@
+# Directory Documentation for `hcl`
+
+## Description
+This package provides classes used to manage [PlantUML HCL Diagram](http://alphadoc.plantuml.com/doc/markdown/en/hcl).
+
+## Link
+- [HCL Diagram _(on alpha-doc)_](http://alphadoc.plantuml.com/doc/markdown/en/hcl)
+
+## Reference
+- [QA-17357](https://forum.plantuml.net/17357/documentation-of-hcl-and-regex)
+
+## Credit
+
+## Misc.
+
diff --git a/src/net/sourceforge/plantuml/help/package-info.java b/src/net/sourceforge/plantuml/help/package-info.java
new file mode 100644
index 000000000..10b882cb1
--- /dev/null
+++ b/src/net/sourceforge/plantuml/help/package-info.java
@@ -0,0 +1,5 @@
+/**
+ * Provides classes used to manage help list.
+ *
+ */
+package net.sourceforge.plantuml.help;
diff --git a/src/net/sourceforge/plantuml/help/readme.md b/src/net/sourceforge/plantuml/help/readme.md
new file mode 100644
index 000000000..ac4ca1174
--- /dev/null
+++ b/src/net/sourceforge/plantuml/help/readme.md
@@ -0,0 +1,18 @@
+# Directory Documentation for `help`
+
+## Description
+This package provides classes used to manage:
+- `help color`
+- `help font`
+- `help keyword`
+- `help theme`
+- `help type`
+
+## Link
+
+## Reference
+
+## Credit
+
+## Misc.
+
diff --git a/src/net/sourceforge/plantuml/html/package-info.java b/src/net/sourceforge/plantuml/html/package-info.java
new file mode 100644
index 000000000..e461f1694
--- /dev/null
+++ b/src/net/sourceforge/plantuml/html/package-info.java
@@ -0,0 +1,7 @@
+/**
+ * Provides classes used to manage
+ *
+ * HTML output format.
+ *
+ */
+package net.sourceforge.plantuml.html;
diff --git a/src/net/sourceforge/plantuml/html/readme.md b/src/net/sourceforge/plantuml/html/readme.md
new file mode 100644
index 000000000..876704f5e
--- /dev/null
+++ b/src/net/sourceforge/plantuml/html/readme.md
@@ -0,0 +1,9 @@
+# Directory Documentation for `html`
+
+## Description
+This package provides classes used to export diagram to a [HTML](https://plantuml.com/en/command-line#458de91d76a8569c) output format.
+
+## Link
+- [PlantUML HTML Output Format](https://plantuml.com/en/command-line#458de91d76a8569c)
+
+## Reference
diff --git a/src/net/sourceforge/plantuml/jcckit/package-info.java b/src/net/sourceforge/plantuml/jcckit/package-info.java
new file mode 100644
index 000000000..d1b99e712
--- /dev/null
+++ b/src/net/sourceforge/plantuml/jcckit/package-info.java
@@ -0,0 +1,8 @@
+/**
+ * Provides classes used to manage
+ *
+ * Jcckit Diagram.
+ *
+ * @see jcckit
+ */
+package net.sourceforge.plantuml.jcckit;
diff --git a/src/net/sourceforge/plantuml/jcckit/readme.md b/src/net/sourceforge/plantuml/jcckit/readme.md
new file mode 100644
index 000000000..f857bab4b
--- /dev/null
+++ b/src/net/sourceforge/plantuml/jcckit/readme.md
@@ -0,0 +1,19 @@
+# Directory Documentation for `jcckit`
+
+## Description
+This package provides classes used to manage [PlantUML JCCKit Diagram](https://plantuml.com/jcckit).
+
+## Link
+- [JCCKit Diagram](https://plantuml.com/jcckit)
+
+## Reference
+- [JCCKit _(on Sourceforge)_](https://jcckit.sourceforge.net)
+- [JCCKit User Guide](https://jcckit.sourceforge.net/UserGuide/index.html)
+- [JCCKit Examples](https://jcckit.sourceforge.net/examples.html)
+
+## Credit
+- [`src/jcckit`](../../../../jcckit/) _(included in PlantUML)_
+- [JCCKit _(on Sourceforge)_](https://jcckit.sourceforge.net)
+
+## Misc.
+
diff --git a/src/net/sourceforge/plantuml/json/package-info.java b/src/net/sourceforge/plantuml/json/package-info.java
new file mode 100644
index 000000000..a258e7569
--- /dev/null
+++ b/src/net/sourceforge/plantuml/json/package-info.java
@@ -0,0 +1,7 @@
+/**
+ * Provides classes used to manage JSON Data (with the minimal-json API).
+ *
+ * @see
+ * Minimal-json API
+ */
+package net.sourceforge.plantuml.json;
diff --git a/src/net/sourceforge/plantuml/json/readme.md b/src/net/sourceforge/plantuml/json/readme.md
new file mode 100644
index 000000000..f46e91fd3
--- /dev/null
+++ b/src/net/sourceforge/plantuml/json/readme.md
@@ -0,0 +1,16 @@
+# Directory Documentation for `json`
+
+## Description
+This package provides classes used to manage [JSON](https://www.json.org) Data _(with the [minimal-json API](https://github.com/ralfstx/minimal-json))_.
+
+## Link
+
+## Reference
+- [JSON _(on Wikipedia)_](https://en.wikipedia.org/wiki/JSON)
+
+## Credit
+- [:octocat:ralfstx/minimal-json](https://github.com/ralfstx/minimal-json)
+- [`json`](../json/) _(included in PlantUML)_
+
+## Misc.
+
diff --git a/src/net/sourceforge/plantuml/jsondiagram/package-info.java b/src/net/sourceforge/plantuml/jsondiagram/package-info.java
new file mode 100644
index 000000000..802ac5b5b
--- /dev/null
+++ b/src/net/sourceforge/plantuml/jsondiagram/package-info.java
@@ -0,0 +1,7 @@
+/**
+ * Provides classes used to manage
+ *
+ * JSON Diagram.
+ *
+ */
+package net.sourceforge.plantuml.jsondiagram;
diff --git a/src/net/sourceforge/plantuml/jsondiagram/readme.md b/src/net/sourceforge/plantuml/jsondiagram/readme.md
new file mode 100644
index 000000000..fb8f314c6
--- /dev/null
+++ b/src/net/sourceforge/plantuml/jsondiagram/readme.md
@@ -0,0 +1,14 @@
+# Directory Documentation for `jsondiagram`
+
+## Description
+This package provides classes used to manage [PlantUML JSON Diagram](https://plantuml.com/json).
+
+## Link
+- [JSON Diagram](https://plantuml.com/json)
+
+## Reference
+
+## Credit
+
+## Misc.
+
diff --git a/src/net/sourceforge/plantuml/log/package-info.java b/src/net/sourceforge/plantuml/log/package-info.java
new file mode 100644
index 000000000..f8f77556b
--- /dev/null
+++ b/src/net/sourceforge/plantuml/log/package-info.java
@@ -0,0 +1,7 @@
+/**
+ * Provides classes used to manage Log and Logging.
+ *
+ * @see java.util.logging
+ *
+ */
+package net.sourceforge.plantuml.log;
diff --git a/src/net/sourceforge/plantuml/log/readme.md b/src/net/sourceforge/plantuml/log/readme.md
new file mode 100644
index 000000000..c2cba3112
--- /dev/null
+++ b/src/net/sourceforge/plantuml/log/readme.md
@@ -0,0 +1,4 @@
+# Directory Documentation for `log`
+
+## Description
+This package provides classes used to manage Log and Logging.
diff --git a/src/net/sourceforge/plantuml/math/package-info.java b/src/net/sourceforge/plantuml/math/package-info.java
new file mode 100644
index 000000000..f15ed0477
--- /dev/null
+++ b/src/net/sourceforge/plantuml/math/package-info.java
@@ -0,0 +1,7 @@
+/**
+ * Provides classes used to manage
+ *
+ * ASCII Math format.
+ *
+ */
+package net.sourceforge.plantuml.math;
diff --git a/src/net/sourceforge/plantuml/math/readme.md b/src/net/sourceforge/plantuml/math/readme.md
new file mode 100644
index 000000000..6891d2a9f
--- /dev/null
+++ b/src/net/sourceforge/plantuml/math/readme.md
@@ -0,0 +1,20 @@
+# Directory Documentation for `math`
+
+## Description
+This package provides classes used to manage [PlantUML ASCII Math](https://plantuml.com/ascii-math) format.
+
+## Link
+- [PlantUML ASCII Math Format](https://plantuml.com/ascii-math)
+
+## Reference
+- [Ascii Math](http://asciimath.org)
+- [JLaTeXMath](https://scilab.gitlab.io/legacy_wiki/JLaTeXMath)
+
+## Credit
+- [:octocat:Asciimath/Asciimathml](https://github.com/asciimath/asciimathml/tree/master/asciimath-based)
+- [`ASCIIMathTeXImg.java`](./ASCIIMathTeXImg.java) is an internal port of [`ASCIIMathTeXImg.js`](https://github.com/asciimath/asciimathml/blob/master/asciimath-based/ASCIIMathTeXImg.js)
+- [:octocat:Opencollab/Jlatexmath](https://github.com/opencollab/jlatexmath)
+
+## Dependency _(if available)_
+- `org.scilab.forge.jlatexmath`
+- `org.apache.batik`
\ No newline at end of file
diff --git a/src/net/sourceforge/plantuml/mindmap/package-info.java b/src/net/sourceforge/plantuml/mindmap/package-info.java
new file mode 100644
index 000000000..a054a2bdc
--- /dev/null
+++ b/src/net/sourceforge/plantuml/mindmap/package-info.java
@@ -0,0 +1,7 @@
+/**
+ * Provides classes used to manage
+ *
+ * Mindmap Diagram.
+ *
+ */
+package net.sourceforge.plantuml.mindmap;
diff --git a/src/net/sourceforge/plantuml/mindmap/readme.md b/src/net/sourceforge/plantuml/mindmap/readme.md
new file mode 100644
index 000000000..ebac9448d
--- /dev/null
+++ b/src/net/sourceforge/plantuml/mindmap/readme.md
@@ -0,0 +1,15 @@
+# Directory Documentation for `mindmap`
+
+## Description
+This package provides classes used to manage [PlantUML Mindmap Diagram](https://plantuml.com/mindmap-diagram).
+
+## Link
+- [Mindmap Diagram](https://plantuml.com/mindmap-diagram)
+
+## Reference
+- [Mind map _(on Wikipedia)_](https://en.wikipedia.org/wiki/Mind_map)
+
+## Credit
+
+## Misc.
+
diff --git a/src/net/sourceforge/plantuml/nwdiag/package-info.java b/src/net/sourceforge/plantuml/nwdiag/package-info.java
new file mode 100644
index 000000000..2d41a8a2e
--- /dev/null
+++ b/src/net/sourceforge/plantuml/nwdiag/package-info.java
@@ -0,0 +1,7 @@
+/**
+ * Provides classes used to manage
+ *
+ * Network Diagram (nwdiag).
+ *
+ */
+package net.sourceforge.plantuml.nwdiag;
diff --git a/src/net/sourceforge/plantuml/nwdiag/readme.md b/src/net/sourceforge/plantuml/nwdiag/readme.md
new file mode 100644
index 000000000..67ed99f69
--- /dev/null
+++ b/src/net/sourceforge/plantuml/nwdiag/readme.md
@@ -0,0 +1,16 @@
+# Directory Documentation for `nwdiag`
+
+## Description
+This package provides classes used to manage [PlantUML Network Diagram (nwdiag)](https://plantuml.com/nwdiag).
+
+## Link
+- [Network Diagram (nwdiag)](https://plantuml.com/nwdiag)
+
+## Reference
+- [Computer network diagram _(on Wikipedia)_](https://en.wikipedia.org/wiki/Computer_network_diagram)
+
+## Credit or Inspiration
+- [`nwdiag` of Takeshi Komiya](http://blockdiag.com/en/nwdiag/nwdiag-examples.html)
+
+## Misc.
+
diff --git a/src/net/sourceforge/plantuml/objectdiagram/package-info.java b/src/net/sourceforge/plantuml/objectdiagram/package-info.java
new file mode 100644
index 000000000..fb8d4521b
--- /dev/null
+++ b/src/net/sourceforge/plantuml/objectdiagram/package-info.java
@@ -0,0 +1,7 @@
+/**
+ * Provides classes used to manage
+ *
+ * Object (object, map, json) Diagram.
+ *
+ */
+package net.sourceforge.plantuml.objectdiagram;
diff --git a/src/net/sourceforge/plantuml/objectdiagram/readme.md b/src/net/sourceforge/plantuml/objectdiagram/readme.md
new file mode 100644
index 000000000..502c06452
--- /dev/null
+++ b/src/net/sourceforge/plantuml/objectdiagram/readme.md
@@ -0,0 +1,17 @@
+# Directory Documentation for `objectdiagram`
+
+## Description
+This package provides classes used to manage [PlantUML Object Diagram](https://plantuml.com/object-diagram):
+- `object`
+- `map`
+- `json`
+
+## Link
+- [Object Diagram](https://plantuml.com/object-diagram)
+
+## Reference
+
+## Credit
+
+## Misc.
+
diff --git a/src/net/sourceforge/plantuml/oregon/package-info.java b/src/net/sourceforge/plantuml/oregon/package-info.java
new file mode 100644
index 000000000..d2f5e715a
--- /dev/null
+++ b/src/net/sourceforge/plantuml/oregon/package-info.java
@@ -0,0 +1,7 @@
+/**
+ * Provides classes used to manage
+ *
+ * The Oregon Trail Game on PlantUML.
+ *
+ */
+package net.sourceforge.plantuml.oregon;
diff --git a/src/net/sourceforge/plantuml/oregon/readme.md b/src/net/sourceforge/plantuml/oregon/readme.md
new file mode 100644
index 000000000..2a03f437d
--- /dev/null
+++ b/src/net/sourceforge/plantuml/oregon/readme.md
@@ -0,0 +1,16 @@
+# Directory Documentation for `oregon`
+
+## Description
+This package provides classes used to play [The Oregon Trail Game](https://plantuml.com/oregon-trail) on PlantUML.
+
+## Link
+- [The Oregon Trail Game](https://plantuml.com/oregon-trail)
+
+## Reference
+- [The Oregon Trail _(on Wikipedia)_](https://en.wikipedia.org/wiki/The_Oregon_Trail_%28series%29)
+
+## Credit or Inspiration
+- [`Westward Ho!` of David Ahl](http://www.atariarchives.org/bca/Chapter02_WestwardHo.php)
+
+## Misc.
+
diff --git a/src/net/sourceforge/plantuml/pdf/package-info.java b/src/net/sourceforge/plantuml/pdf/package-info.java
new file mode 100644
index 000000000..197101bd8
--- /dev/null
+++ b/src/net/sourceforge/plantuml/pdf/package-info.java
@@ -0,0 +1,7 @@
+/**
+ * Provides classes used to manage
+ *
+ * PDF output format.
+ *
+ */
+package net.sourceforge.plantuml.pdf;
diff --git a/src/net/sourceforge/plantuml/pdf/readme.md b/src/net/sourceforge/plantuml/pdf/readme.md
new file mode 100644
index 000000000..581611d49
--- /dev/null
+++ b/src/net/sourceforge/plantuml/pdf/readme.md
@@ -0,0 +1,10 @@
+# Directory Documentation for `pdf`
+
+## Description
+This package provides classes used to export diagram to a [PDF](https://plantuml.com/pdf) output format.
+
+## Link
+- [PDF](https://plantuml.com/pdf)
+
+## Reference
+- [PDF _(on Wikipedia)_](https://en.wikipedia.org/wiki/PDF)
diff --git a/src/net/sourceforge/plantuml/picoweb/package-info.java b/src/net/sourceforge/plantuml/picoweb/package-info.java
new file mode 100644
index 000000000..bd80e1feb
--- /dev/null
+++ b/src/net/sourceforge/plantuml/picoweb/package-info.java
@@ -0,0 +1,7 @@
+/**
+ * Provides classes used to manage
+ *
+ * PlantUML PicoWeb Server.
+ *
+ */
+package net.sourceforge.plantuml.picoweb;
diff --git a/src/net/sourceforge/plantuml/picoweb/readme.md b/src/net/sourceforge/plantuml/picoweb/readme.md
new file mode 100644
index 000000000..3b772dbd1
--- /dev/null
+++ b/src/net/sourceforge/plantuml/picoweb/readme.md
@@ -0,0 +1,18 @@
+# Directory Documentation for `picoweb`
+
+## Description
+This package provides classes used to manage a [PlantUML PicoWeb Server](https://plantuml.com/picoweb).
+
+## Link
+- [PlantUML PicoWeb server](https://plantuml.com/picoweb)
+
+## Reference
+
+## Credit or Inspiration
+- ["Create a simple HTTP Web Server in Java"](https://www.ssaurel.com/blog/create-a-simple-http-web-server-in-java) on the [Sylvain Saurel Blog](https://www.ssaurel.com/blog/)
+- [`JavaHTTPServer.java` of Sylvain Saurel](https://gist.github.com/ssaurel/2e8462d70b9e61c4dd6df2dc2cd725d7)
+ (on a [@ssaurel's gist](https://gist.github.com/ssaurel))
+
+ ## Misc.
+- [`pico` on "Metric prefix" _(on Wikipedia)_](https://en.wikipedia.org/wiki/Metric_prefix)
+- [`pico-` on "Orders of magnitude" _(on Wikipedia)_](https://en.wikipedia.org/wiki/Orders_of_magnitude_(numbers)#10%E2%88%9212)
diff --git a/src/net/sourceforge/plantuml/png/package-info.java b/src/net/sourceforge/plantuml/png/package-info.java
new file mode 100644
index 000000000..197101bd8
--- /dev/null
+++ b/src/net/sourceforge/plantuml/png/package-info.java
@@ -0,0 +1,7 @@
+/**
+ * Provides classes used to manage
+ *
+ * PDF output format.
+ *
+ */
+package net.sourceforge.plantuml.pdf;
diff --git a/src/net/sourceforge/plantuml/png/readme.md b/src/net/sourceforge/plantuml/png/readme.md
new file mode 100644
index 000000000..581611d49
--- /dev/null
+++ b/src/net/sourceforge/plantuml/png/readme.md
@@ -0,0 +1,10 @@
+# Directory Documentation for `pdf`
+
+## Description
+This package provides classes used to export diagram to a [PDF](https://plantuml.com/pdf) output format.
+
+## Link
+- [PDF](https://plantuml.com/pdf)
+
+## Reference
+- [PDF _(on Wikipedia)_](https://en.wikipedia.org/wiki/PDF)
diff --git a/src/net/sourceforge/plantuml/project/package-info.java b/src/net/sourceforge/plantuml/project/package-info.java
new file mode 100644
index 000000000..4b5d58947
--- /dev/null
+++ b/src/net/sourceforge/plantuml/project/package-info.java
@@ -0,0 +1,7 @@
+/**
+ * Provides classes used to manage
+ *
+ * Gantt Diagram.
+ *
+ */
+package net.sourceforge.plantuml.project;
diff --git a/src/net/sourceforge/plantuml/project/readme.md b/src/net/sourceforge/plantuml/project/readme.md
new file mode 100644
index 000000000..714f91eba
--- /dev/null
+++ b/src/net/sourceforge/plantuml/project/readme.md
@@ -0,0 +1,15 @@
+# Directory Documentation for `project`
+
+## Description
+This package provides classes used to manage [PlantUML Gantt Diagram](https://plantuml.com/gantt-diagram).
+
+## Link
+- [Gantt Diagram](https://plantuml.com/gantt-diagram)
+
+## Reference
+- [Gantt chart _(on Wikipedia)_](https://en.wikipedia.org/wiki/Gantt_chart)
+
+## Credit
+
+## Misc.
+