From 28cc4638d6b178db1c4953b3dda40c0bcdac7b4f Mon Sep 17 00:00:00 2001
From: The-Lum <86879521+The-Lum@users.noreply.github.com>
Date: Tue, 17 Oct 2023 10:16:34 +0000
Subject: [PATCH 1/3] docs: add `package-info.java` and `readme.md` (for `abel`
to `command`)
---
.../plantuml/abel/package-info.java | 6 +++++
src/net/sourceforge/plantuml/abel/readme.md | 14 ++++++++++
.../plantuml/acearth/package-info.java | 8 ++++++
.../sourceforge/plantuml/acearth/readme.md | 20 ++++++++++++++
.../plantuml/ant/package-info.java | 7 +++++
src/net/sourceforge/plantuml/ant/readme.md | 6 +++--
.../plantuml/argon2/package-info.java | 26 +++++++++++++++++++
src/net/sourceforge/plantuml/argon2/readme.md | 22 ++++++++++++++++
.../plantuml/asciiart/package-info.java | 7 +++++
.../sourceforge/plantuml/asciiart/readme.md | 11 ++++++++
.../plantuml/board/package-info.java | 7 +++++
src/net/sourceforge/plantuml/board/readme.md | 11 ++++++++
.../plantuml/bpm/package-info.java | 7 +++++
src/net/sourceforge/plantuml/bpm/readme.md | 16 ++++++++++++
.../plantuml/braille/package-info.java | 7 +++++
.../sourceforge/plantuml/braille/readme.md | 11 ++++++++
.../plantuml/brotli/package-info.java | 15 +++++++++++
src/net/sourceforge/plantuml/brotli/readme.md | 18 +++++++++++++
.../plantuml/classdiagram/package-info.java | 7 +++++
.../plantuml/classdiagram/readme.md | 14 ++++++++++
.../plantuml/code/package-info.java | 9 +++++++
src/net/sourceforge/plantuml/code/readme.md | 19 ++++++++++++++
.../plantuml/command/package-info.java | 7 +++++
.../sourceforge/plantuml/command/readme.md | 13 ++++++++++
.../plantuml/ebnf/package-info.java | 7 +++++
src/net/sourceforge/plantuml/ebnf/readme.md | 15 +++++++++++
.../plantuml/filesdiagram/package-info.java | 7 +++++
.../plantuml/filesdiagram/readme.md | 15 +++++++++++
28 files changed, 330 insertions(+), 2 deletions(-)
create mode 100644 src/net/sourceforge/plantuml/abel/package-info.java
create mode 100644 src/net/sourceforge/plantuml/abel/readme.md
create mode 100644 src/net/sourceforge/plantuml/acearth/package-info.java
create mode 100644 src/net/sourceforge/plantuml/acearth/readme.md
create mode 100644 src/net/sourceforge/plantuml/ant/package-info.java
create mode 100644 src/net/sourceforge/plantuml/argon2/package-info.java
create mode 100644 src/net/sourceforge/plantuml/argon2/readme.md
create mode 100644 src/net/sourceforge/plantuml/asciiart/package-info.java
create mode 100644 src/net/sourceforge/plantuml/asciiart/readme.md
create mode 100644 src/net/sourceforge/plantuml/board/package-info.java
create mode 100644 src/net/sourceforge/plantuml/board/readme.md
create mode 100644 src/net/sourceforge/plantuml/bpm/package-info.java
create mode 100644 src/net/sourceforge/plantuml/bpm/readme.md
create mode 100644 src/net/sourceforge/plantuml/braille/package-info.java
create mode 100644 src/net/sourceforge/plantuml/braille/readme.md
create mode 100644 src/net/sourceforge/plantuml/brotli/package-info.java
create mode 100644 src/net/sourceforge/plantuml/brotli/readme.md
create mode 100644 src/net/sourceforge/plantuml/classdiagram/package-info.java
create mode 100644 src/net/sourceforge/plantuml/classdiagram/readme.md
create mode 100644 src/net/sourceforge/plantuml/code/package-info.java
create mode 100644 src/net/sourceforge/plantuml/code/readme.md
create mode 100644 src/net/sourceforge/plantuml/command/package-info.java
create mode 100644 src/net/sourceforge/plantuml/command/readme.md
create mode 100644 src/net/sourceforge/plantuml/ebnf/package-info.java
create mode 100644 src/net/sourceforge/plantuml/ebnf/readme.md
create mode 100644 src/net/sourceforge/plantuml/filesdiagram/package-info.java
create mode 100644 src/net/sourceforge/plantuml/filesdiagram/readme.md
diff --git a/src/net/sourceforge/plantuml/abel/package-info.java b/src/net/sourceforge/plantuml/abel/package-info.java
new file mode 100644
index 000000000..a22acf5cf
--- /dev/null
+++ b/src/net/sourceforge/plantuml/abel/package-info.java
@@ -0,0 +1,6 @@
+/**
+ * Provides classes used to manage {@link Entity}.
+ *
+ * @see {@link net.sourceforge.plantuml.plasma}
+ */
+package net.sourceforge.plantuml.abel;
diff --git a/src/net/sourceforge/plantuml/abel/readme.md b/src/net/sourceforge/plantuml/abel/readme.md
new file mode 100644
index 000000000..c3e87d7c9
--- /dev/null
+++ b/src/net/sourceforge/plantuml/abel/readme.md
@@ -0,0 +1,14 @@
+# Directory Documentation for `abel`
+
+## Description
+This package provides classes used to manage [`Entity`](./Entity.java).
+
+## Link
+
+## Reference
+
+## Credit
+
+## Misc.
+- [Abel _(on Wikipedia)_](https://en.wikipedia.org/wiki/Abel_(disambiguation))
+- [Niels Henrik Abel](https://en.wikipedia.org/wiki/Niels_Henrik_Abel)
diff --git a/src/net/sourceforge/plantuml/acearth/package-info.java b/src/net/sourceforge/plantuml/acearth/package-info.java
new file mode 100644
index 000000000..f3af0dc2a
--- /dev/null
+++ b/src/net/sourceforge/plantuml/acearth/package-info.java
@@ -0,0 +1,8 @@
+/**
+ * Provides classes used to generate
+ *
+ * XEarth Image.
+ *
+ * @see {@link ext.plantuml.com.ctreber.acearth}
+ */
+package net.sourceforge.plantuml.acearth;
diff --git a/src/net/sourceforge/plantuml/acearth/readme.md b/src/net/sourceforge/plantuml/acearth/readme.md
new file mode 100644
index 000000000..a369bb7a5
--- /dev/null
+++ b/src/net/sourceforge/plantuml/acearth/readme.md
@@ -0,0 +1,20 @@
+# Directory Documentation for `acearth`
+
+## Description
+This package provides classes used to generate [XEarth Image](https://plantuml.com/xearth).
+
+The Java port of `XEarth` used in `PlantUML` is the [`AC.earth` of Christian Treber](../../../../ext/plantuml/com/ctreber/acearth/).
+
+## Link
+- [XEarth Image _(on `PlantUML`)_](https://plantuml.com/xearth)
+
+## Reference
+- [`xearth` of Kirk Lauritz Johnson](https://hewgill.com/xearth/original/)
+- [`xearth` for Windows of Greg Hewgill](https://hewgill.com/xearth/)
+
+## Credit
+- [`AC.earth` of Christian Treber](../../../../ext/plantuml/com/ctreber/acearth/)
+- [AC Earth _(on Web Archive)_](https://web.archive.org/web/20180428011447/http://www.acproductions.de/acearth)
+
+## Misc.
+- [Earth Day _(on Wikipedia)_](https://en.wikipedia.org/wiki/Earth_Day)
diff --git a/src/net/sourceforge/plantuml/ant/package-info.java b/src/net/sourceforge/plantuml/ant/package-info.java
new file mode 100644
index 000000000..13c4b6bba
--- /dev/null
+++ b/src/net/sourceforge/plantuml/ant/package-info.java
@@ -0,0 +1,7 @@
+/**
+ * Provides classes used to manage
+ *
+ * PlantUML Ant task.
+ *
+ */
+package net.sourceforge.plantuml.ant;
diff --git a/src/net/sourceforge/plantuml/ant/readme.md b/src/net/sourceforge/plantuml/ant/readme.md
index 1465cc435..cdc863943 100644
--- a/src/net/sourceforge/plantuml/ant/readme.md
+++ b/src/net/sourceforge/plantuml/ant/readme.md
@@ -5,5 +5,7 @@ This package provides classes used to manage [PlantUML Ant task](https://plantum
## Link
- [PlantUML Ant task](https://plantuml.com/ant-task)
-- [Ant](https://ant.apache.org)
-- [Ant _(on Wikipedia)_](https://en.wikipedia.org/wiki/Apache_Ant)
+
+## Reference
+- [Apache Ant](https://ant.apache.org)
+- [Apache Ant _(on Wikipedia)_](https://en.wikipedia.org/wiki/Apache_Ant)
diff --git a/src/net/sourceforge/plantuml/argon2/package-info.java b/src/net/sourceforge/plantuml/argon2/package-info.java
new file mode 100644
index 000000000..13f96fd1f
--- /dev/null
+++ b/src/net/sourceforge/plantuml/argon2/package-info.java
@@ -0,0 +1,26 @@
+/**
+ * Provides classes used to manage the password-hashing function nammed
+ *
+ * Argon2.
+ *
+ *
+ * The code is taken from:
+ *
+ *
+ *
+ * Ref.:
+ *
+ *
+ *
+ */
+package net.sourceforge.plantuml.argon2;
diff --git a/src/net/sourceforge/plantuml/argon2/readme.md b/src/net/sourceforge/plantuml/argon2/readme.md
new file mode 100644
index 000000000..5b9c35e9a
--- /dev/null
+++ b/src/net/sourceforge/plantuml/argon2/readme.md
@@ -0,0 +1,22 @@
+# Directory Documentation for `argon2`
+
+## Description
+This package provides classes used to manage the password-hashing function nammed [Argon2](https://github.com/andreas1327250/argon2-java).
+
+## Link
+- [:octocat:Andreas1327250/Argon2-java](https://github.com/andreas1327250/argon2-java)
+
+## Reference
+- [Argon2 _(on Wikipedia)_](https://en.wikipedia.org/wiki/Argon2)
+- [RFC 9106 (Argon2)](https://datatracker.ietf.org/doc/html/rfc9106)
+- [:octocat:P-H-C/PHC-winner-argon2](https://github.com/P-H-C/phc-winner-argon2)
+- [Password Hashing Competition (PHC)](https://www.password-hashing.net)
+- [BLAKE2](https://www.blake2.net)
+- [RFC 7693 (BLAKE2)](https://datatracker.ietf.org/doc/html/rfc7693)
+
+## Credit
+- [:octocat:Andreas1327250/Argon2-java](https://github.com/andreas1327250/argon2-java)
+- [:octocat:Alphazero/Blake2b](https://github.com/alphazero/Blake2b/)
+
+## Misc.
+
diff --git a/src/net/sourceforge/plantuml/asciiart/package-info.java b/src/net/sourceforge/plantuml/asciiart/package-info.java
new file mode 100644
index 000000000..b2a812ff3
--- /dev/null
+++ b/src/net/sourceforge/plantuml/asciiart/package-info.java
@@ -0,0 +1,7 @@
+/**
+ * Provides classes used to manage
+ *
+ * ASCII Art output format.
+ *
+ */
+package net.sourceforge.plantuml.asciiart;
diff --git a/src/net/sourceforge/plantuml/asciiart/readme.md b/src/net/sourceforge/plantuml/asciiart/readme.md
new file mode 100644
index 000000000..40bf00c90
--- /dev/null
+++ b/src/net/sourceforge/plantuml/asciiart/readme.md
@@ -0,0 +1,11 @@
+# Directory Documentation for `asciiart`
+
+## Description
+This package provides classes used to export diagram to an [ASCII Art](https://plantuml.com/ascii-art) output format.
+
+## Link
+- [ASCII Art Output Format](https://plantuml.com/ascii-art)
+- [ASCII Art _(on Wikipedia)_](https://en.wikipedia.org/wiki/ASCII_art)
+
+## Reference
+
diff --git a/src/net/sourceforge/plantuml/board/package-info.java b/src/net/sourceforge/plantuml/board/package-info.java
new file mode 100644
index 000000000..27c585a94
--- /dev/null
+++ b/src/net/sourceforge/plantuml/board/package-info.java
@@ -0,0 +1,7 @@
+/**
+ * Provides classes used to manage
+ *
+ * Board Diagram.
+ *
+ */
+package net.sourceforge.plantuml.board;
diff --git a/src/net/sourceforge/plantuml/board/readme.md b/src/net/sourceforge/plantuml/board/readme.md
new file mode 100644
index 000000000..0dad7ba78
--- /dev/null
+++ b/src/net/sourceforge/plantuml/board/readme.md
@@ -0,0 +1,11 @@
+# Directory Documentation for `board`
+
+## Description
+This package provides classes used to manage [PlantUML Board Diagram](http://alphadoc.plantuml.com/doc/markdown/en/board-diagram).
+
+## Link
+- [Board Diagram _(on Alpha-doc)_](http://alphadoc.plantuml.com/doc/markdown/en/board-diagram)
+
+## Reference
+- [GH-423](https://github.com/plantuml/plantuml/issues/423)
+
diff --git a/src/net/sourceforge/plantuml/bpm/package-info.java b/src/net/sourceforge/plantuml/bpm/package-info.java
new file mode 100644
index 000000000..ec737d116
--- /dev/null
+++ b/src/net/sourceforge/plantuml/bpm/package-info.java
@@ -0,0 +1,7 @@
+/**
+ * Provides classes used to manage
+ *
+ * BPMN (Business Process Model and Notation) Diagram.
+ *
+ */
+package net.sourceforge.plantuml.bpm;
diff --git a/src/net/sourceforge/plantuml/bpm/readme.md b/src/net/sourceforge/plantuml/bpm/readme.md
new file mode 100644
index 000000000..ca4b43137
--- /dev/null
+++ b/src/net/sourceforge/plantuml/bpm/readme.md
@@ -0,0 +1,16 @@
+# Directory Documentation for `bpm`
+
+## Description
+This package provides classes used to manage [PlantUML BPMN diagram](http://alphadoc.plantuml.com/doc/markdown/en/bpmn).
+
+## Link
+- [BPMN Diagram _(on Alpha-doc)_](http://alphadoc.plantuml.com/doc/markdown/en/bpmn)
+- [BPMN _(on Wikipedia)_](https://en.wikipedia.org/wiki/Business_Process_Model_and_Notation)
+
+## Reference
+- [QA-5647](https://forum.plantuml.net/5647/plans-for-bpmn-support)
+
+## Credit
+
+## Misc.
+
diff --git a/src/net/sourceforge/plantuml/braille/package-info.java b/src/net/sourceforge/plantuml/braille/package-info.java
new file mode 100644
index 000000000..ce161668a
--- /dev/null
+++ b/src/net/sourceforge/plantuml/braille/package-info.java
@@ -0,0 +1,7 @@
+/**
+ * Provides classes used to manage
+ *
+ * Braille output format.
+ *
+ */
+package net.sourceforge.plantuml.braille;
diff --git a/src/net/sourceforge/plantuml/braille/readme.md b/src/net/sourceforge/plantuml/braille/readme.md
new file mode 100644
index 000000000..5cea22da8
--- /dev/null
+++ b/src/net/sourceforge/plantuml/braille/readme.md
@@ -0,0 +1,11 @@
+# Directory Documentation for `braille`
+
+## Description
+This package provides classes used to export diagram to a [Braille](https://plantuml.com/en/command-line#458de91d76a8569c) output format.
+
+## Link
+- [PlantUML Braille Output Format](https://plantuml.com/en/command-line#458de91d76a8569c)
+
+## Reference
+- [QA-4752](https://forum.plantuml.net/4752/translate-class-diagram-to-braille)
+
diff --git a/src/net/sourceforge/plantuml/brotli/package-info.java b/src/net/sourceforge/plantuml/brotli/package-info.java
new file mode 100644
index 000000000..05e4f12ca
--- /dev/null
+++ b/src/net/sourceforge/plantuml/brotli/package-info.java
@@ -0,0 +1,15 @@
+/**
+ * Provides classes used to manage
+ *
+ * Brotli Compression Algorithm.
+ *
+ *
+ * The code is taken from:
+ *
+ *
+ *
+ */
+package net.sourceforge.plantuml.brotli;
diff --git a/src/net/sourceforge/plantuml/brotli/readme.md b/src/net/sourceforge/plantuml/brotli/readme.md
new file mode 100644
index 000000000..43919430a
--- /dev/null
+++ b/src/net/sourceforge/plantuml/brotli/readme.md
@@ -0,0 +1,18 @@
+# Directory Documentation for `brotli`
+
+## Description
+This package provides classes used to manage [Brotli Compression Algorithm](https://github.com/google/brotli).
+
+## Link
+- [:octocat:Google/Brotli](https://github.com/google/brotli)
+
+## Reference
+- [Brotli _(on Wikipedia)_](https://en.wikipedia.org/wiki/Brotli)
+- [RFC 7932](https://datatracker.ietf.org/doc/html/rfc7932)
+
+## Credit
+- [:octocat:Google/Brotli](https://github.com/google/brotli)
+
+## Misc.
+- [Brötchen _(on Wikipedia)_](https://de.wikipedia.org/wiki/Br%C3%B6tchen)
+- [Bread roll _(on Wikipedia)_](https://en.wikipedia.org/wiki/Bread_roll)
diff --git a/src/net/sourceforge/plantuml/classdiagram/package-info.java b/src/net/sourceforge/plantuml/classdiagram/package-info.java
new file mode 100644
index 000000000..1e6f4621e
--- /dev/null
+++ b/src/net/sourceforge/plantuml/classdiagram/package-info.java
@@ -0,0 +1,7 @@
+/**
+ * Provides classes used to manage
+ *
+ * Class Diagram.
+ *
+ */
+package net.sourceforge.plantuml.classdiagram;
diff --git a/src/net/sourceforge/plantuml/classdiagram/readme.md b/src/net/sourceforge/plantuml/classdiagram/readme.md
new file mode 100644
index 000000000..2d61f5688
--- /dev/null
+++ b/src/net/sourceforge/plantuml/classdiagram/readme.md
@@ -0,0 +1,14 @@
+# Directory Documentation for `classdiagram`
+
+## Description
+This package provides classes used to manage [PlantUML Class Diagram](https://plantuml.com/class-diagram).
+
+## Link
+- [Class Diagram](https://plantuml.com/class-diagram)
+
+## Reference
+
+## Credit
+
+## Misc.
+
diff --git a/src/net/sourceforge/plantuml/code/package-info.java b/src/net/sourceforge/plantuml/code/package-info.java
new file mode 100644
index 000000000..ab99d1cc9
--- /dev/null
+++ b/src/net/sourceforge/plantuml/code/package-info.java
@@ -0,0 +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}
+ *
+ */
+package net.sourceforge.plantuml.code;
diff --git a/src/net/sourceforge/plantuml/code/readme.md b/src/net/sourceforge/plantuml/code/readme.md
new file mode 100644
index 000000000..9e301b836
--- /dev/null
+++ b/src/net/sourceforge/plantuml/code/readme.md
@@ -0,0 +1,19 @@
+# Directory Documentation for `code`
+
+## Description
+This package provides classes used to manage Coding and Compression.
+
+## Link
+- [`brotli`](../brotli/)
+- [`code.deflate`](./deflate/)
+- [`zopfli`](../zopfli/)
+
+## Reference
+- [Simple DEFLATE decompressor](https://www.nayuki.io/page/simple-deflate-decompressor)
+- [RFC 1951 (DEFLATE)](https://datatracker.ietf.org/doc/html/rfc1951)
+
+## Credit
+- [:octocat:Nayuki/Simple-DEFLATE-decompressor](https://github.com/nayuki/Simple-DEFLATE-decompressor)
+
+## Misc.
+
diff --git a/src/net/sourceforge/plantuml/command/package-info.java b/src/net/sourceforge/plantuml/command/package-info.java
new file mode 100644
index 000000000..e78b77344
--- /dev/null
+++ b/src/net/sourceforge/plantuml/command/package-info.java
@@ -0,0 +1,7 @@
+/**
+ * Provides classes used to manage PlantUML End User Common Command.
+ *
+ * @see {@link 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
new file mode 100644
index 000000000..77edda8be
--- /dev/null
+++ b/src/net/sourceforge/plantuml/command/readme.md
@@ -0,0 +1,13 @@
+# Directory Documentation for `command`
+
+## Description
+This package provides classes used to manage PlantUML End User Common Command.
+
+## Link
+
+## Reference
+
+## Credit
+
+## Misc.
+
diff --git a/src/net/sourceforge/plantuml/ebnf/package-info.java b/src/net/sourceforge/plantuml/ebnf/package-info.java
new file mode 100644
index 000000000..0b7e661eb
--- /dev/null
+++ b/src/net/sourceforge/plantuml/ebnf/package-info.java
@@ -0,0 +1,7 @@
+/**
+ * Provides classes used to manage
+ *
+ * EBNF (Extended Backus–Naur Form) Diagram.
+ *
+ */
+package net.sourceforge.plantuml.ebnf;
diff --git a/src/net/sourceforge/plantuml/ebnf/readme.md b/src/net/sourceforge/plantuml/ebnf/readme.md
new file mode 100644
index 000000000..41d9366a3
--- /dev/null
+++ b/src/net/sourceforge/plantuml/ebnf/readme.md
@@ -0,0 +1,15 @@
+# Directory Documentation for `ebnf`
+
+## Description
+This package provides classes used to manage [Extended Backus–Naur Form (EBNF) Diagram](https://plantuml.com/ebnf).
+
+## Link
+- [Extended Backus–Naur Form (EBNF) Diagram](https://plantuml.com/ebnf)
+
+## Reference
+- [Extended Backus–Naur Form (EBNF) _(on Wikipedia)_](https://en.wikipedia.org/wiki/Extended_Backus%E2%80%93Naur_form)
+
+## Credit
+
+## Misc.
+
diff --git a/src/net/sourceforge/plantuml/filesdiagram/package-info.java b/src/net/sourceforge/plantuml/filesdiagram/package-info.java
new file mode 100644
index 000000000..64dbd8b7a
--- /dev/null
+++ b/src/net/sourceforge/plantuml/filesdiagram/package-info.java
@@ -0,0 +1,7 @@
+/**
+ * Provides classes used to manage
+ *
+ * [Tree] Files diagram.
+ *
+ */
+package net.sourceforge.plantuml.filesdiagram;
diff --git a/src/net/sourceforge/plantuml/filesdiagram/readme.md b/src/net/sourceforge/plantuml/filesdiagram/readme.md
new file mode 100644
index 000000000..158fce745
--- /dev/null
+++ b/src/net/sourceforge/plantuml/filesdiagram/readme.md
@@ -0,0 +1,15 @@
+# Directory Documentation for `filesdiagram`
+
+## Description
+This package provides classes used to manage [[Tree] Files diagram](http://alphadoc.plantuml.com/doc/markdown/en/files-diagram).
+
+## Link
+- [[Tree] Files diagram _(on alpha-doc)_](http://alphadoc.plantuml.com/doc/markdown/en/files-diagram)
+
+## Reference
+- [GH-1448](https://github.com/plantuml/plantuml/issues/1448)
+
+## Credit
+
+## Misc.
+
From 3a095fd7cb4ebe6950d269f1cf6610a359ec5181 Mon Sep 17 00:00:00 2001
From: The-Lum <86879521+The-Lum@users.noreply.github.com>
Date: Thu, 2 Nov 2023 20:38:00 +0000
Subject: [PATCH 2/3] docs: add `package-info.java` and `readme.md` (for
`dedication` to `png`)
---
.../plantuml/abel/package-info.java | 2 +-
.../plantuml/acearth/package-info.java | 2 +-
.../activitydiagram/package-info.java | 2 +-
.../plantuml/argon2/package-info.java | 2 ++
.../plantuml/code/package-info.java | 6 ++---
.../plantuml/command/package-info.java | 8 ++++---
.../sourceforge/plantuml/command/readme.md | 3 ++-
.../plantuml/dedication/package-info.java | 7 ++++++
.../sourceforge/plantuml/dedication/readme.md | 13 +++++++++++
.../plantuml/definition/package-info.java | 7 ++++++
.../sourceforge/plantuml/definition/readme.md | 14 +++++++++++
.../plantuml/descdiagram/package-info.java | 22 ++++++++++++++++++
.../plantuml/descdiagram/readme.md | 19 +++++++++++++++
.../plantuml/directdot/package-info.java | 7 ++++++
.../sourceforge/plantuml/directdot/readme.md | 15 ++++++++++++
.../plantuml/ditaa/package-info.java | 8 +++++++
src/net/sourceforge/plantuml/ditaa/readme.md | 16 +++++++++++++
.../plantuml/donors/package-info.java | 9 ++++++++
src/net/sourceforge/plantuml/donors/readme.md | 17 ++++++++++++++
.../plantuml/dot/package-info.java | 7 ++++++
src/net/sourceforge/plantuml/dot/readme.md | 19 +++++++++++++++
src/net/sourceforge/plantuml/ebnf/readme.md | 3 ++-
.../plantuml/eggs/package-info.java | 5 ++++
src/net/sourceforge/plantuml/eggs/readme.md | 14 +++++++++++
.../plantuml/elk/package-info.java | 9 ++++++++
src/net/sourceforge/plantuml/elk/readme.md | 23 +++++++++++++++++++
.../plantuml/error/package-info.java | 5 ++++
src/net/sourceforge/plantuml/error/readme.md | 4 ++++
.../plantuml/font/package-info.java | 7 ++++++
src/net/sourceforge/plantuml/font/readme.md | 4 ++++
.../plantuml/ftp/package-info.java | 7 ++++++
src/net/sourceforge/plantuml/ftp/readme.md | 11 +++++++++
.../plantuml/graphml/package-info.java | 5 ++++
.../sourceforge/plantuml/graphml/readme.md | 16 +++++++++++++
.../plantuml/hcl/package-info.java | 7 ++++++
src/net/sourceforge/plantuml/hcl/readme.md | 15 ++++++++++++
.../plantuml/help/package-info.java | 5 ++++
src/net/sourceforge/plantuml/help/readme.md | 18 +++++++++++++++
.../plantuml/html/package-info.java | 7 ++++++
src/net/sourceforge/plantuml/html/readme.md | 9 ++++++++
.../plantuml/jcckit/package-info.java | 8 +++++++
src/net/sourceforge/plantuml/jcckit/readme.md | 19 +++++++++++++++
.../plantuml/json/package-info.java | 7 ++++++
src/net/sourceforge/plantuml/json/readme.md | 16 +++++++++++++
.../plantuml/jsondiagram/package-info.java | 7 ++++++
.../plantuml/jsondiagram/readme.md | 14 +++++++++++
.../plantuml/log/package-info.java | 7 ++++++
src/net/sourceforge/plantuml/log/readme.md | 4 ++++
.../plantuml/math/package-info.java | 7 ++++++
src/net/sourceforge/plantuml/math/readme.md | 20 ++++++++++++++++
.../plantuml/mindmap/package-info.java | 7 ++++++
.../sourceforge/plantuml/mindmap/readme.md | 15 ++++++++++++
.../plantuml/nwdiag/package-info.java | 7 ++++++
src/net/sourceforge/plantuml/nwdiag/readme.md | 16 +++++++++++++
.../plantuml/objectdiagram/package-info.java | 7 ++++++
.../plantuml/objectdiagram/readme.md | 17 ++++++++++++++
.../plantuml/oregon/package-info.java | 7 ++++++
src/net/sourceforge/plantuml/oregon/readme.md | 16 +++++++++++++
.../plantuml/pdf/package-info.java | 7 ++++++
src/net/sourceforge/plantuml/pdf/readme.md | 10 ++++++++
.../plantuml/picoweb/package-info.java | 7 ++++++
.../sourceforge/plantuml/picoweb/readme.md | 18 +++++++++++++++
.../plantuml/png/package-info.java | 7 ++++++
src/net/sourceforge/plantuml/png/readme.md | 10 ++++++++
.../plantuml/project/package-info.java | 7 ++++++
.../sourceforge/plantuml/project/readme.md | 15 ++++++++++++
66 files changed, 650 insertions(+), 11 deletions(-)
create mode 100644 src/net/sourceforge/plantuml/dedication/package-info.java
create mode 100644 src/net/sourceforge/plantuml/dedication/readme.md
create mode 100644 src/net/sourceforge/plantuml/definition/package-info.java
create mode 100644 src/net/sourceforge/plantuml/definition/readme.md
create mode 100644 src/net/sourceforge/plantuml/descdiagram/package-info.java
create mode 100644 src/net/sourceforge/plantuml/descdiagram/readme.md
create mode 100644 src/net/sourceforge/plantuml/directdot/package-info.java
create mode 100644 src/net/sourceforge/plantuml/directdot/readme.md
create mode 100644 src/net/sourceforge/plantuml/ditaa/package-info.java
create mode 100644 src/net/sourceforge/plantuml/ditaa/readme.md
create mode 100644 src/net/sourceforge/plantuml/donors/package-info.java
create mode 100644 src/net/sourceforge/plantuml/donors/readme.md
create mode 100644 src/net/sourceforge/plantuml/dot/package-info.java
create mode 100644 src/net/sourceforge/plantuml/dot/readme.md
create mode 100644 src/net/sourceforge/plantuml/eggs/package-info.java
create mode 100644 src/net/sourceforge/plantuml/eggs/readme.md
create mode 100644 src/net/sourceforge/plantuml/elk/package-info.java
create mode 100644 src/net/sourceforge/plantuml/elk/readme.md
create mode 100644 src/net/sourceforge/plantuml/error/package-info.java
create mode 100644 src/net/sourceforge/plantuml/error/readme.md
create mode 100644 src/net/sourceforge/plantuml/font/package-info.java
create mode 100644 src/net/sourceforge/plantuml/font/readme.md
create mode 100644 src/net/sourceforge/plantuml/ftp/package-info.java
create mode 100644 src/net/sourceforge/plantuml/ftp/readme.md
create mode 100644 src/net/sourceforge/plantuml/graphml/package-info.java
create mode 100644 src/net/sourceforge/plantuml/graphml/readme.md
create mode 100644 src/net/sourceforge/plantuml/hcl/package-info.java
create mode 100644 src/net/sourceforge/plantuml/hcl/readme.md
create mode 100644 src/net/sourceforge/plantuml/help/package-info.java
create mode 100644 src/net/sourceforge/plantuml/help/readme.md
create mode 100644 src/net/sourceforge/plantuml/html/package-info.java
create mode 100644 src/net/sourceforge/plantuml/html/readme.md
create mode 100644 src/net/sourceforge/plantuml/jcckit/package-info.java
create mode 100644 src/net/sourceforge/plantuml/jcckit/readme.md
create mode 100644 src/net/sourceforge/plantuml/json/package-info.java
create mode 100644 src/net/sourceforge/plantuml/json/readme.md
create mode 100644 src/net/sourceforge/plantuml/jsondiagram/package-info.java
create mode 100644 src/net/sourceforge/plantuml/jsondiagram/readme.md
create mode 100644 src/net/sourceforge/plantuml/log/package-info.java
create mode 100644 src/net/sourceforge/plantuml/log/readme.md
create mode 100644 src/net/sourceforge/plantuml/math/package-info.java
create mode 100644 src/net/sourceforge/plantuml/math/readme.md
create mode 100644 src/net/sourceforge/plantuml/mindmap/package-info.java
create mode 100644 src/net/sourceforge/plantuml/mindmap/readme.md
create mode 100644 src/net/sourceforge/plantuml/nwdiag/package-info.java
create mode 100644 src/net/sourceforge/plantuml/nwdiag/readme.md
create mode 100644 src/net/sourceforge/plantuml/objectdiagram/package-info.java
create mode 100644 src/net/sourceforge/plantuml/objectdiagram/readme.md
create mode 100644 src/net/sourceforge/plantuml/oregon/package-info.java
create mode 100644 src/net/sourceforge/plantuml/oregon/readme.md
create mode 100644 src/net/sourceforge/plantuml/pdf/package-info.java
create mode 100644 src/net/sourceforge/plantuml/pdf/readme.md
create mode 100644 src/net/sourceforge/plantuml/picoweb/package-info.java
create mode 100644 src/net/sourceforge/plantuml/picoweb/readme.md
create mode 100644 src/net/sourceforge/plantuml/png/package-info.java
create mode 100644 src/net/sourceforge/plantuml/png/readme.md
create mode 100644 src/net/sourceforge/plantuml/project/package-info.java
create mode 100644 src/net/sourceforge/plantuml/project/readme.md
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.
+
From c885afd3d269c5ab262b9e2368caad2cd1c3c429 Mon Sep 17 00:00:00 2001
From: The-Lum <86879521+The-Lum@users.noreply.github.com>
Date: Thu, 9 Nov 2023 20:11:23 +0000
Subject: [PATCH 3/3] docs: add `package-info.java` and `readme.md` (for `png`
to `zopfli`)
Todo or remaining directory:
- api
- compositediagram
- core
- decoration
- flowdiagram
- golem
- klimt
- mda
- text
- utils
- webp
---
.../plantuml/annotation/package-info.java | 5 +++
.../sourceforge/plantuml/annotation/readme.md | 6 +++
.../plantuml/argon2/package-info.java | 2 +-
src/net/sourceforge/plantuml/argon2/readme.md | 8 ++--
.../plantuml/brotli/package-info.java | 3 ++
src/net/sourceforge/plantuml/brotli/readme.md | 4 +-
src/net/sourceforge/plantuml/code/readme.md | 2 +-
.../plantuml/cucadiagram/package-info.java | 16 +++++++
.../plantuml/cucadiagram/readme.md | 8 ++++
.../plantuml/ditaa/package-info.java | 3 +-
src/net/sourceforge/plantuml/ditaa/readme.md | 2 +-
.../plantuml/dot/package-info.java | 6 ++-
src/net/sourceforge/plantuml/dot/readme.md | 8 +++-
.../plantuml/ebnf/package-info.java | 2 +
src/net/sourceforge/plantuml/ebnf/readme.md | 9 +++-
.../plantuml/elk/package-info.java | 3 ++
src/net/sourceforge/plantuml/elk/readme.md | 10 +++--
.../plantuml/emoji/package-info.java | 9 ++++
src/net/sourceforge/plantuml/emoji/readme.md | 10 +++++
.../plantuml/file/package-info.java | 7 ++++
src/net/sourceforge/plantuml/file/readme.md | 4 ++
.../plantuml/flashcode/package-info.java | 8 ++++
.../sourceforge/plantuml/flashcode/readme.md | 15 +++++++
src/net/sourceforge/plantuml/ftp/readme.md | 2 +
.../plantuml/fun/package-info.java | 6 +++
src/net/sourceforge/plantuml/fun/readme.md | 4 ++
.../plantuml/gitlog/package-info.java | 7 ++++
src/net/sourceforge/plantuml/gitlog/readme.md | 12 ++++++
.../plantuml/help/package-info.java | 2 +-
src/net/sourceforge/plantuml/json/readme.md | 2 +-
.../plantuml/log/package-info.java | 4 +-
src/net/sourceforge/plantuml/math/readme.md | 4 +-
src/net/sourceforge/plantuml/nwdiag/readme.md | 1 +
.../plantuml/openiconic/package-info.java | 9 ++++
.../sourceforge/plantuml/openiconic/readme.md | 10 +++++
.../plantuml/png/package-info.java | 6 +--
src/net/sourceforge/plantuml/png/readme.md | 8 ++--
.../plantuml/posimo/package-info.java | 6 +++
src/net/sourceforge/plantuml/posimo/readme.md | 42 +++++++++++++++++++
.../plantuml/preproc/package-info.java | 10 +++++
.../sourceforge/plantuml/preproc/readme.md | 10 +++++
.../plantuml/preproc2/package-info.java | 10 +++++
.../sourceforge/plantuml/preproc2/readme.md | 10 +++++
.../sourceforge/plantuml/project/readme.md | 5 ---
.../plantuml/real/package-info.java | 6 +++
src/net/sourceforge/plantuml/real/readme.md | 7 ++++
.../plantuml/regexdiagram/package-info.java | 9 ++++
.../plantuml/regexdiagram/readme.md | 17 ++++++++
.../plantuml/salt/package-info.java | 7 ++++
src/net/sourceforge/plantuml/salt/readme.md | 11 +++++
.../plantuml/sdot/package-info.java | 12 ++++++
src/net/sourceforge/plantuml/sdot/readme.md | 26 ++++++++++++
.../plantuml/security/package-info.java | 7 ++++
.../sourceforge/plantuml/security/readme.md | 18 ++++++++
.../sequencediagram/package-info.java | 15 +++++++
.../plantuml/sequencediagram/readme.md | 20 +++++++++
.../plantuml/skin/package-info.java | 10 +++++
src/net/sourceforge/plantuml/skin/readme.md | 10 +++++
.../plantuml/statediagram/package-info.java | 7 ++++
.../plantuml/statediagram/readme.md | 16 +++++++
.../plantuml/stats/package-info.java | 7 ++++
src/net/sourceforge/plantuml/stats/readme.md | 7 ++++
.../plantuml/stereo/package-info.java | 5 +++
src/net/sourceforge/plantuml/stereo/readme.md | 11 +++++
.../plantuml/style/package-info.java | 10 +++++
src/net/sourceforge/plantuml/style/readme.md | 13 ++++++
.../plantuml/sudoku/package-info.java | 7 ++++
src/net/sourceforge/plantuml/sudoku/readme.md | 18 ++++++++
.../plantuml/svek/package-info.java | 9 ++++
src/net/sourceforge/plantuml/svek/readme.md | 13 ++++++
.../plantuml/swing/package-info.java | 7 ++++
src/net/sourceforge/plantuml/swing/readme.md | 15 +++++++
.../plantuml/syntax/package-info.java | 8 ++++
src/net/sourceforge/plantuml/syntax/readme.md | 33 +++++++++++++++
.../plantuml/telnet/package-info.java | 8 ++++
src/net/sourceforge/plantuml/telnet/readme.md | 7 ++++
.../plantuml/theme/package-info.java | 10 +++++
src/net/sourceforge/plantuml/theme/readme.md | 10 +++++
.../plantuml/tikz/package-info.java | 7 ++++
src/net/sourceforge/plantuml/tikz/readme.md | 12 ++++++
.../plantuml/tim/package-info.java | 11 +++++
src/net/sourceforge/plantuml/tim/readme.md | 22 ++++++++++
.../plantuml/timingdiagram/package-info.java | 7 ++++
.../plantuml/timingdiagram/readme.md | 15 +++++++
.../plantuml/url/package-info.java | 13 ++++++
src/net/sourceforge/plantuml/url/readme.md | 13 ++++++
.../plantuml/version/package-info.java | 9 ++++
.../sourceforge/plantuml/version/readme.md | 9 ++++
.../plantuml/vizjs/package-info.java | 29 +++++++++++++
src/net/sourceforge/plantuml/vizjs/readme.md | 23 ++++++++++
.../plantuml/wbs/package-info.java | 7 ++++
src/net/sourceforge/plantuml/wbs/readme.md | 16 +++++++
.../plantuml/windowsdot/package-info.java | 15 +++++++
.../sourceforge/plantuml/windowsdot/readme.md | 15 +++++++
.../plantuml/wire/package-info.java | 7 ++++
src/net/sourceforge/plantuml/wire/readme.md | 10 +++++
.../plantuml/xmi/package-info.java | 7 ++++
src/net/sourceforge/plantuml/xmi/readme.md | 10 +++++
.../plantuml/xml/package-info.java | 8 ++++
src/net/sourceforge/plantuml/xml/readme.md | 10 +++++
.../plantuml/xmlsc/package-info.java | 7 ++++
src/net/sourceforge/plantuml/xmlsc/readme.md | 11 +++++
.../plantuml/yaml/package-info.java | 7 ++++
src/net/sourceforge/plantuml/yaml/readme.md | 15 +++++++
.../plantuml/zopfli/package-info.java | 18 ++++++++
src/net/sourceforge/plantuml/zopfli/readme.md | 18 ++++++++
106 files changed, 1031 insertions(+), 36 deletions(-)
create mode 100644 src/net/sourceforge/plantuml/annotation/package-info.java
create mode 100644 src/net/sourceforge/plantuml/annotation/readme.md
create mode 100644 src/net/sourceforge/plantuml/cucadiagram/package-info.java
create mode 100644 src/net/sourceforge/plantuml/cucadiagram/readme.md
create mode 100644 src/net/sourceforge/plantuml/emoji/package-info.java
create mode 100644 src/net/sourceforge/plantuml/emoji/readme.md
create mode 100644 src/net/sourceforge/plantuml/file/package-info.java
create mode 100644 src/net/sourceforge/plantuml/file/readme.md
create mode 100644 src/net/sourceforge/plantuml/flashcode/package-info.java
create mode 100644 src/net/sourceforge/plantuml/flashcode/readme.md
create mode 100644 src/net/sourceforge/plantuml/fun/package-info.java
create mode 100644 src/net/sourceforge/plantuml/fun/readme.md
create mode 100644 src/net/sourceforge/plantuml/gitlog/package-info.java
create mode 100644 src/net/sourceforge/plantuml/gitlog/readme.md
create mode 100644 src/net/sourceforge/plantuml/openiconic/package-info.java
create mode 100644 src/net/sourceforge/plantuml/openiconic/readme.md
create mode 100644 src/net/sourceforge/plantuml/posimo/package-info.java
create mode 100644 src/net/sourceforge/plantuml/posimo/readme.md
create mode 100644 src/net/sourceforge/plantuml/preproc/package-info.java
create mode 100644 src/net/sourceforge/plantuml/preproc/readme.md
create mode 100644 src/net/sourceforge/plantuml/preproc2/package-info.java
create mode 100644 src/net/sourceforge/plantuml/preproc2/readme.md
create mode 100644 src/net/sourceforge/plantuml/real/package-info.java
create mode 100644 src/net/sourceforge/plantuml/real/readme.md
create mode 100644 src/net/sourceforge/plantuml/regexdiagram/package-info.java
create mode 100644 src/net/sourceforge/plantuml/regexdiagram/readme.md
create mode 100644 src/net/sourceforge/plantuml/salt/package-info.java
create mode 100644 src/net/sourceforge/plantuml/salt/readme.md
create mode 100644 src/net/sourceforge/plantuml/sdot/package-info.java
create mode 100644 src/net/sourceforge/plantuml/sdot/readme.md
create mode 100644 src/net/sourceforge/plantuml/security/package-info.java
create mode 100644 src/net/sourceforge/plantuml/security/readme.md
create mode 100644 src/net/sourceforge/plantuml/sequencediagram/package-info.java
create mode 100644 src/net/sourceforge/plantuml/sequencediagram/readme.md
create mode 100644 src/net/sourceforge/plantuml/skin/package-info.java
create mode 100644 src/net/sourceforge/plantuml/skin/readme.md
create mode 100644 src/net/sourceforge/plantuml/statediagram/package-info.java
create mode 100644 src/net/sourceforge/plantuml/statediagram/readme.md
create mode 100644 src/net/sourceforge/plantuml/stats/package-info.java
create mode 100644 src/net/sourceforge/plantuml/stats/readme.md
create mode 100644 src/net/sourceforge/plantuml/stereo/package-info.java
create mode 100644 src/net/sourceforge/plantuml/stereo/readme.md
create mode 100644 src/net/sourceforge/plantuml/style/package-info.java
create mode 100644 src/net/sourceforge/plantuml/style/readme.md
create mode 100644 src/net/sourceforge/plantuml/sudoku/package-info.java
create mode 100644 src/net/sourceforge/plantuml/sudoku/readme.md
create mode 100644 src/net/sourceforge/plantuml/svek/package-info.java
create mode 100644 src/net/sourceforge/plantuml/svek/readme.md
create mode 100644 src/net/sourceforge/plantuml/swing/package-info.java
create mode 100644 src/net/sourceforge/plantuml/swing/readme.md
create mode 100644 src/net/sourceforge/plantuml/syntax/package-info.java
create mode 100644 src/net/sourceforge/plantuml/syntax/readme.md
create mode 100644 src/net/sourceforge/plantuml/telnet/package-info.java
create mode 100644 src/net/sourceforge/plantuml/telnet/readme.md
create mode 100644 src/net/sourceforge/plantuml/theme/package-info.java
create mode 100644 src/net/sourceforge/plantuml/theme/readme.md
create mode 100644 src/net/sourceforge/plantuml/tikz/package-info.java
create mode 100644 src/net/sourceforge/plantuml/tikz/readme.md
create mode 100644 src/net/sourceforge/plantuml/tim/package-info.java
create mode 100644 src/net/sourceforge/plantuml/tim/readme.md
create mode 100644 src/net/sourceforge/plantuml/timingdiagram/package-info.java
create mode 100644 src/net/sourceforge/plantuml/timingdiagram/readme.md
create mode 100644 src/net/sourceforge/plantuml/url/package-info.java
create mode 100644 src/net/sourceforge/plantuml/url/readme.md
create mode 100644 src/net/sourceforge/plantuml/version/package-info.java
create mode 100644 src/net/sourceforge/plantuml/version/readme.md
create mode 100644 src/net/sourceforge/plantuml/vizjs/package-info.java
create mode 100644 src/net/sourceforge/plantuml/vizjs/readme.md
create mode 100644 src/net/sourceforge/plantuml/wbs/package-info.java
create mode 100644 src/net/sourceforge/plantuml/wbs/readme.md
create mode 100644 src/net/sourceforge/plantuml/windowsdot/package-info.java
create mode 100644 src/net/sourceforge/plantuml/windowsdot/readme.md
create mode 100644 src/net/sourceforge/plantuml/wire/package-info.java
create mode 100644 src/net/sourceforge/plantuml/wire/readme.md
create mode 100644 src/net/sourceforge/plantuml/xmi/package-info.java
create mode 100644 src/net/sourceforge/plantuml/xmi/readme.md
create mode 100644 src/net/sourceforge/plantuml/xml/package-info.java
create mode 100644 src/net/sourceforge/plantuml/xml/readme.md
create mode 100644 src/net/sourceforge/plantuml/xmlsc/package-info.java
create mode 100644 src/net/sourceforge/plantuml/xmlsc/readme.md
create mode 100644 src/net/sourceforge/plantuml/yaml/package-info.java
create mode 100644 src/net/sourceforge/plantuml/yaml/readme.md
create mode 100644 src/net/sourceforge/plantuml/zopfli/package-info.java
create mode 100644 src/net/sourceforge/plantuml/zopfli/readme.md
diff --git a/src/net/sourceforge/plantuml/annotation/package-info.java b/src/net/sourceforge/plantuml/annotation/package-info.java
new file mode 100644
index 000000000..d4f4e9ad5
--- /dev/null
+++ b/src/net/sourceforge/plantuml/annotation/package-info.java
@@ -0,0 +1,5 @@
+/**
+ * Provides classes used to manage Java User Annotation on PlantUML.
+ *
+ */
+package net.sourceforge.plantuml.annotation;
diff --git a/src/net/sourceforge/plantuml/annotation/readme.md b/src/net/sourceforge/plantuml/annotation/readme.md
new file mode 100644
index 000000000..ae958c4c6
--- /dev/null
+++ b/src/net/sourceforge/plantuml/annotation/readme.md
@@ -0,0 +1,6 @@
+# Directory Documentation for `annotation`
+
+## Description
+This package provides classes used to manage Java User Annotation on PlantUML.
+
+Currently use to identify 'DeadCode' with the `@DeadCode` Annotation.
\ No newline at end of file
diff --git a/src/net/sourceforge/plantuml/argon2/package-info.java b/src/net/sourceforge/plantuml/argon2/package-info.java
index ae7430091..605e879c7 100644
--- a/src/net/sourceforge/plantuml/argon2/package-info.java
+++ b/src/net/sourceforge/plantuml/argon2/package-info.java
@@ -1,5 +1,5 @@
/**
- * Provides classes used to manage the password-hashing function nammed
+ * Provides classes used to manage the Password-Hashing Function nammed
*
* Argon2.
*
diff --git a/src/net/sourceforge/plantuml/argon2/readme.md b/src/net/sourceforge/plantuml/argon2/readme.md
index 5b9c35e9a..d52410a02 100644
--- a/src/net/sourceforge/plantuml/argon2/readme.md
+++ b/src/net/sourceforge/plantuml/argon2/readme.md
@@ -4,19 +4,19 @@
This package provides classes used to manage the password-hashing function nammed [Argon2](https://github.com/andreas1327250/argon2-java).
## Link
-- [:octocat:Andreas1327250/Argon2-java](https://github.com/andreas1327250/argon2-java)
+- :octocat: [Andreas1327250/Argon2-java](https://github.com/andreas1327250/argon2-java)
## Reference
- [Argon2 _(on Wikipedia)_](https://en.wikipedia.org/wiki/Argon2)
- [RFC 9106 (Argon2)](https://datatracker.ietf.org/doc/html/rfc9106)
-- [:octocat:P-H-C/PHC-winner-argon2](https://github.com/P-H-C/phc-winner-argon2)
+- :octocat: [P-H-C/PHC-winner-argon2](https://github.com/P-H-C/phc-winner-argon2)
- [Password Hashing Competition (PHC)](https://www.password-hashing.net)
- [BLAKE2](https://www.blake2.net)
- [RFC 7693 (BLAKE2)](https://datatracker.ietf.org/doc/html/rfc7693)
## Credit
-- [:octocat:Andreas1327250/Argon2-java](https://github.com/andreas1327250/argon2-java)
-- [:octocat:Alphazero/Blake2b](https://github.com/alphazero/Blake2b/)
+- :octocat: [Andreas1327250/Argon2-java](https://github.com/andreas1327250/argon2-java)
+- :octocat: [Alphazero/Blake2b](https://github.com/alphazero/Blake2b/)
## Misc.
diff --git a/src/net/sourceforge/plantuml/brotli/package-info.java b/src/net/sourceforge/plantuml/brotli/package-info.java
index 05e4f12ca..c976ce34e 100644
--- a/src/net/sourceforge/plantuml/brotli/package-info.java
+++ b/src/net/sourceforge/plantuml/brotli/package-info.java
@@ -11,5 +11,8 @@
*
*
*
+ * @see net.sourceforge.plantuml.code.deflate
+ * @see net.sourceforge.plantuml.zopfli
+ *
*/
package net.sourceforge.plantuml.brotli;
diff --git a/src/net/sourceforge/plantuml/brotli/readme.md b/src/net/sourceforge/plantuml/brotli/readme.md
index 43919430a..176c1fceb 100644
--- a/src/net/sourceforge/plantuml/brotli/readme.md
+++ b/src/net/sourceforge/plantuml/brotli/readme.md
@@ -4,14 +4,14 @@
This package provides classes used to manage [Brotli Compression Algorithm](https://github.com/google/brotli).
## Link
-- [:octocat:Google/Brotli](https://github.com/google/brotli)
+- :octocat: [Google/Brotli](https://github.com/google/brotli)
## Reference
- [Brotli _(on Wikipedia)_](https://en.wikipedia.org/wiki/Brotli)
- [RFC 7932](https://datatracker.ietf.org/doc/html/rfc7932)
## Credit
-- [:octocat:Google/Brotli](https://github.com/google/brotli)
+- :octocat: [Google/Brotli](https://github.com/google/brotli)
## Misc.
- [Brötchen _(on Wikipedia)_](https://de.wikipedia.org/wiki/Br%C3%B6tchen)
diff --git a/src/net/sourceforge/plantuml/code/readme.md b/src/net/sourceforge/plantuml/code/readme.md
index 9e301b836..786a357dd 100644
--- a/src/net/sourceforge/plantuml/code/readme.md
+++ b/src/net/sourceforge/plantuml/code/readme.md
@@ -13,7 +13,7 @@ This package provides classes used to manage Coding and Compression.
- [RFC 1951 (DEFLATE)](https://datatracker.ietf.org/doc/html/rfc1951)
## Credit
-- [:octocat:Nayuki/Simple-DEFLATE-decompressor](https://github.com/nayuki/Simple-DEFLATE-decompressor)
+- :octocat: [Nayuki/Simple-DEFLATE-decompressor](https://github.com/nayuki/Simple-DEFLATE-decompressor)
## Misc.
diff --git a/src/net/sourceforge/plantuml/cucadiagram/package-info.java b/src/net/sourceforge/plantuml/cucadiagram/package-info.java
new file mode 100644
index 000000000..ac23d43cc
--- /dev/null
+++ b/src/net/sourceforge/plantuml/cucadiagram/package-info.java
@@ -0,0 +1,16 @@
+/**
+ * Provides classes used to manage PlantUML Class-UseCase-Activity (CUCA) Diagram.
+ *
+ *
+ * The PlantUML CUCA Diagrams are:
+ *
+ *
+ */
+package net.sourceforge.plantuml.cucadiagram;
diff --git a/src/net/sourceforge/plantuml/cucadiagram/readme.md b/src/net/sourceforge/plantuml/cucadiagram/readme.md
new file mode 100644
index 000000000..f53cc653a
--- /dev/null
+++ b/src/net/sourceforge/plantuml/cucadiagram/readme.md
@@ -0,0 +1,8 @@
+# Directory Documentation for `cucadiagram`
+
+## Description
+This package provides classes used to manage PlantUML Class-UseCase-Activity (CUCA) Diagram:
+- [Class Diagram](https://plantuml.com/class-diagram)
+- [Use Case Diagram](https://plantuml.com/use-case-diagram)
+- [Activity Diagram (legacy)](https://plantuml.com/activity-diagram-legacy)
+
diff --git a/src/net/sourceforge/plantuml/ditaa/package-info.java b/src/net/sourceforge/plantuml/ditaa/package-info.java
index 0246431ab..c2cbdbd4c 100644
--- a/src/net/sourceforge/plantuml/ditaa/package-info.java
+++ b/src/net/sourceforge/plantuml/ditaa/package-info.java
@@ -3,6 +3,7 @@
*
* Ditaa Diagram.
*
- * @see org.stathissideris.ascii2image
+ * @see org.stathissideris.ascii2image.graphics
+ *
*/
package net.sourceforge.plantuml.ditaa;
diff --git a/src/net/sourceforge/plantuml/ditaa/readme.md b/src/net/sourceforge/plantuml/ditaa/readme.md
index 6c23b94a3..1288661f2 100644
--- a/src/net/sourceforge/plantuml/ditaa/readme.md
+++ b/src/net/sourceforge/plantuml/ditaa/readme.md
@@ -10,7 +10,7 @@ This package provides classes used to manage [PlantUML Ditaa Diagram](https://pl
## Credit
- [`org.stathissideris.ascii2image`](../../../../org/stathissideris/ascii2image) _(included in PlantUML)_
-- [:octocat:stathissideris/ditaa](https://github.com/stathissideris/ditaa)
+- :octocat: [stathissideris/ditaa](https://github.com/stathissideris/ditaa)
## Misc.
diff --git a/src/net/sourceforge/plantuml/dot/package-info.java b/src/net/sourceforge/plantuml/dot/package-info.java
index a4efda1a3..8ca4ea6a7 100644
--- a/src/net/sourceforge/plantuml/dot/package-info.java
+++ b/src/net/sourceforge/plantuml/dot/package-info.java
@@ -2,6 +2,10 @@
* Provides classes used to manage
*
* Graphviz dot for layout engine.
- *
+ *
+ * @see net.sourceforge.plantuml.elk
+ * @see net.sourceforge.plantuml.sdot
+ * @see net.sourceforge.plantuml.vizjs
+ *
*/
package net.sourceforge.plantuml.dot;
diff --git a/src/net/sourceforge/plantuml/dot/readme.md b/src/net/sourceforge/plantuml/dot/readme.md
index a543cc570..9f10d71c1 100644
--- a/src/net/sourceforge/plantuml/dot/readme.md
+++ b/src/net/sourceforge/plantuml/dot/readme.md
@@ -12,8 +12,12 @@ This package provides classes used to export diagram with the [Graphviz dot](htt
## 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)
+ - [`elk/proxy`](./proxy/) _(included in PlantUML)_
+- [Smetana _(internal port of GraphViz in plantuml)_](https://plantuml.com/smetana02) and :octocat: [plantuml/smetana](https://github.com/plantuml/smetana)
+ - [`plantuml/sdot`](../sdot/)
- [`src/gen`](../../../../gen)
- [`src/smetana/core`](../../../../smetana/core)
- [`src/h`](../../../../h)
+- [PlantUML Vizjs _(a port to Javascript of GraphViz)_](https://plantuml.com/vizjs)
+ - [`plantuml/vizjs`](../vizjs/) _(included in PlantUML)_
+ - :octocat: [Plantuml/Vizjs](https://github.com/plantuml/vizjs) _(not included in `plantuml/plantuml`)_
\ No newline at end of file
diff --git a/src/net/sourceforge/plantuml/ebnf/package-info.java b/src/net/sourceforge/plantuml/ebnf/package-info.java
index 0b7e661eb..1a575b81f 100644
--- a/src/net/sourceforge/plantuml/ebnf/package-info.java
+++ b/src/net/sourceforge/plantuml/ebnf/package-info.java
@@ -3,5 +3,7 @@
*
* EBNF (Extended Backus–Naur Form) Diagram.
*
+ * @see net.sourceforge.plantuml.regexdiagram
+ *
*/
package net.sourceforge.plantuml.ebnf;
diff --git a/src/net/sourceforge/plantuml/ebnf/readme.md b/src/net/sourceforge/plantuml/ebnf/readme.md
index 450626866..467522f50 100644
--- a/src/net/sourceforge/plantuml/ebnf/readme.md
+++ b/src/net/sourceforge/plantuml/ebnf/readme.md
@@ -7,10 +7,17 @@ This package provides classes used to manage [Extended Backus–Naur Form (EBNF)
- [Extended Backus–Naur Form (EBNF) Diagram](https://plantuml.com/ebnf)
## Reference
+### Internal Reference
+- [QA-16529](https://forum.plantuml.net/16529/could-we-add-syntax-diagrams)
+
+### External Reference
+- [Syntax diagram _(on Wikipedia)_](https://en.wikipedia.org/wiki/Syntax_diagram)
- [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
+## See also
+- [PlantUML Regular expression (Regex) Diagram](https://plantuml.com/regex)
+- [`regexdiagram`](../regexdiagram/) _(directory on plantuml)_
## Misc.
- [Shunting yard algorithm](https://en.wikipedia.org/wiki/Shunting_yard_algorithm)
diff --git a/src/net/sourceforge/plantuml/elk/package-info.java b/src/net/sourceforge/plantuml/elk/package-info.java
index eaba9ff58..a9bbe414a 100644
--- a/src/net/sourceforge/plantuml/elk/package-info.java
+++ b/src/net/sourceforge/plantuml/elk/package-info.java
@@ -4,6 +4,9 @@
* Eclipse Layout Kernel (ELK) for layout engine.
*
* @see net.sourceforge.plantuml.elk.proxy
+ * @see net.sourceforge.plantuml.dot
+ * @see net.sourceforge.plantuml.sdot
+ * @see net.sourceforge.plantuml.vizjs
*
*/
package net.sourceforge.plantuml.elk;
diff --git a/src/net/sourceforge/plantuml/elk/readme.md b/src/net/sourceforge/plantuml/elk/readme.md
index 83c4fdae7..8c9c4361f 100644
--- a/src/net/sourceforge/plantuml/elk/readme.md
+++ b/src/net/sourceforge/plantuml/elk/readme.md
@@ -4,7 +4,7 @@
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)
+- [PlantUML 'Eclipse Layout Kernel (ELK)' Engine](https://plantuml.com/elk)
## Reference
- [Eclipse Layout Kernel (ELK)](https://eclipse.dev/elk/)
@@ -12,12 +12,16 @@ This package provides classes used to export diagram with the [Eclipse Layout Ke
## Credit
- [`elk/proxy`](./proxy/) _(included in PlantUML)_
-- [:octocat:eclipse/elk](https://github.com/eclipse/elk)
+- :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)
+- [Smetana _(internal port of GraphViz in plantuml)_](https://plantuml.com/smetana02) and :octocat: [plantuml/smetana](https://github.com/plantuml/smetana)
+ - [`plantuml/sdot`](../sdot/)
- [`src/gen`](../../../../gen)
- [`src/smetana/core`](../../../../smetana/core)
- [`src/h`](../../../../h)
+- [PlantUML Vizjs _(a port to Javascript of GraphViz)_](https://plantuml.com/vizjs)
+ - [`plantuml/vizjs`](../vizjs/) _(included in PlantUML)_
+ - :octocat: [Plantuml/Vizjs](https://github.com/plantuml/vizjs) _(not included in `plantuml/plantuml`)_
\ No newline at end of file
diff --git a/src/net/sourceforge/plantuml/emoji/package-info.java b/src/net/sourceforge/plantuml/emoji/package-info.java
new file mode 100644
index 000000000..c8de08cdc
--- /dev/null
+++ b/src/net/sourceforge/plantuml/emoji/package-info.java
@@ -0,0 +1,9 @@
+/**
+ * Provides classes used to manage
+ *
+ * PlantUML Emoji icon set.
+ *
+ * @see net.sourceforge.plantuml.openiconic
+ *
+ */
+package net.sourceforge.plantuml.emoji;
diff --git a/src/net/sourceforge/plantuml/emoji/readme.md b/src/net/sourceforge/plantuml/emoji/readme.md
new file mode 100644
index 000000000..8de541223
--- /dev/null
+++ b/src/net/sourceforge/plantuml/emoji/readme.md
@@ -0,0 +1,10 @@
+# Directory Documentation for `emoji`
+
+## Description
+This package provides classes used to manage [PlantUML Emoji](https://plantuml.com/en/creole#68305e25f5788db0) icon set.
+
+## Link
+- [PlantUML Emoji](https://plantuml.com/en/creole#68305e25f5788db0) icon set
+
+## Credit
+- :octocat: [EmojiTwo/emojitwo](https://github.com/EmojiTwo/emojitwo)
diff --git a/src/net/sourceforge/plantuml/file/package-info.java b/src/net/sourceforge/plantuml/file/package-info.java
new file mode 100644
index 000000000..db17bd331
--- /dev/null
+++ b/src/net/sourceforge/plantuml/file/package-info.java
@@ -0,0 +1,7 @@
+/**
+ * Provides classes used to manage Folder and File.
+ *
+ * @see net.sourceforge.plantuml.security.SFile
+ *
+ */
+package net.sourceforge.plantuml.file;
diff --git a/src/net/sourceforge/plantuml/file/readme.md b/src/net/sourceforge/plantuml/file/readme.md
new file mode 100644
index 000000000..401e0cb39
--- /dev/null
+++ b/src/net/sourceforge/plantuml/file/readme.md
@@ -0,0 +1,4 @@
+# Directory Documentation for `file`
+
+## Description
+This package provides classes used to manage Folder and File.
diff --git a/src/net/sourceforge/plantuml/flashcode/package-info.java b/src/net/sourceforge/plantuml/flashcode/package-info.java
new file mode 100644
index 000000000..e016dc1c9
--- /dev/null
+++ b/src/net/sourceforge/plantuml/flashcode/package-info.java
@@ -0,0 +1,8 @@
+/**
+ * Provides classes used to manage
+ * Flashcode especially QR Code (on PlantUML).
+ *
+ * @see ext.plantuml.com.google.zxing
+ * @see net.sourceforge.plantuml.klimt.creole.atom.AtomImg#createQrcode
+ */
+package net.sourceforge.plantuml.flashcode;
diff --git a/src/net/sourceforge/plantuml/flashcode/readme.md b/src/net/sourceforge/plantuml/flashcode/readme.md
new file mode 100644
index 000000000..5d49c3123
--- /dev/null
+++ b/src/net/sourceforge/plantuml/flashcode/readme.md
@@ -0,0 +1,15 @@
+# Directory Documentation for `flashcode`
+
+## Description
+This package provides classes used to manage Flashcode especially QR Code (on PlantUML).
+
+## Reference
+- [Barcode _(on Wikipedia)_](https://en.wikipedia.org/wiki/Barcode)
+- [QR code _(on Wikipedia)_](https://en.wikipedia.org/wiki/QR_code)
+
+## Credit
+- [`com.google.zxing`](../../../../ext/plantuml/com/google/zxing/) _(included in PlantUML)_
+- :octocat: [zxing/zxing](https://github.com/zxing/zxing)
+
+## Misc.
+- [Flashcode _(on Wikipedia)_](https://fr.wikipedia.org/wiki/Flashcode) [fr]
diff --git a/src/net/sourceforge/plantuml/ftp/readme.md b/src/net/sourceforge/plantuml/ftp/readme.md
index d7937f21f..c93d7bccb 100644
--- a/src/net/sourceforge/plantuml/ftp/readme.md
+++ b/src/net/sourceforge/plantuml/ftp/readme.md
@@ -9,3 +9,5 @@ This package provides classes used to manage a [FTP](https://plantuml.com/ftp) s
## Reference
- [QA-9235](https://forum.plantuml.net/9235/unexpected-ftp-session)
+## Reference
+- [File Transfer Protocol _(on Wikipedia)_](https://en.wikipedia.org/wiki/File_Transfer_Protocol)
diff --git a/src/net/sourceforge/plantuml/fun/package-info.java b/src/net/sourceforge/plantuml/fun/package-info.java
new file mode 100644
index 000000000..791aedc74
--- /dev/null
+++ b/src/net/sourceforge/plantuml/fun/package-info.java
@@ -0,0 +1,6 @@
+/**
+ * Provides classes used to manage
+ * PlantUML Fun icon set.
+ *
+ */
+package net.sourceforge.plantuml.fun;
diff --git a/src/net/sourceforge/plantuml/fun/readme.md b/src/net/sourceforge/plantuml/fun/readme.md
new file mode 100644
index 000000000..57fc099e1
--- /dev/null
+++ b/src/net/sourceforge/plantuml/fun/readme.md
@@ -0,0 +1,4 @@
+# Directory Documentation for `fun`
+
+## Description
+This package provides classes used to manage Fun icon or sprite set.
diff --git a/src/net/sourceforge/plantuml/gitlog/package-info.java b/src/net/sourceforge/plantuml/gitlog/package-info.java
new file mode 100644
index 000000000..4f8c7465d
--- /dev/null
+++ b/src/net/sourceforge/plantuml/gitlog/package-info.java
@@ -0,0 +1,7 @@
+/**
+ * Provides classes used to manage
+ *
+ * Commits Git Log Diagram.
+ *
+ */
+package net.sourceforge.plantuml.gitlog;
diff --git a/src/net/sourceforge/plantuml/gitlog/readme.md b/src/net/sourceforge/plantuml/gitlog/readme.md
new file mode 100644
index 000000000..d924e612d
--- /dev/null
+++ b/src/net/sourceforge/plantuml/gitlog/readme.md
@@ -0,0 +1,12 @@
+# Directory Documentation for `gitlog`
+
+## Description
+This package provides classes used to manage [PlantUML Commits Git Log Diagram Diagram](http://alphadoc.plantuml.com/doc/markdown/en/git-diagram).
+
+## Link
+- [PlantUML Commits Git Log Diagram Diagram _(on Alpha-doc)_](http://alphadoc.plantuml.com/doc/markdown/en/git-diagram)
+
+## Reference
+- [QA-13557](https://forum.plantuml.net/13557/support-for-the-different-%40start-commands)
+- [GH-493](https://github.com/plantuml/plantuml/pull/493)
+
diff --git a/src/net/sourceforge/plantuml/help/package-info.java b/src/net/sourceforge/plantuml/help/package-info.java
index 10b882cb1..a4dd0f108 100644
--- a/src/net/sourceforge/plantuml/help/package-info.java
+++ b/src/net/sourceforge/plantuml/help/package-info.java
@@ -1,5 +1,5 @@
/**
- * Provides classes used to manage help list.
+ * Provides classes used to manage Help list.
*
*/
package net.sourceforge.plantuml.help;
diff --git a/src/net/sourceforge/plantuml/json/readme.md b/src/net/sourceforge/plantuml/json/readme.md
index f46e91fd3..1c0b1cde0 100644
--- a/src/net/sourceforge/plantuml/json/readme.md
+++ b/src/net/sourceforge/plantuml/json/readme.md
@@ -9,7 +9,7 @@ This package provides classes used to manage [JSON](https://www.json.org) Data _
- [JSON _(on Wikipedia)_](https://en.wikipedia.org/wiki/JSON)
## Credit
-- [:octocat:ralfstx/minimal-json](https://github.com/ralfstx/minimal-json)
+- :octocat: [ralfstx/minimal-json](https://github.com/ralfstx/minimal-json)
- [`json`](../json/) _(included in PlantUML)_
## Misc.
diff --git a/src/net/sourceforge/plantuml/log/package-info.java b/src/net/sourceforge/plantuml/log/package-info.java
index f8f77556b..1f668fc1c 100644
--- a/src/net/sourceforge/plantuml/log/package-info.java
+++ b/src/net/sourceforge/plantuml/log/package-info.java
@@ -1,7 +1,5 @@
/**
* Provides classes used to manage Log and Logging.
- *
- * @see java.util.logging
- *
+ *
*/
package net.sourceforge.plantuml.log;
diff --git a/src/net/sourceforge/plantuml/math/readme.md b/src/net/sourceforge/plantuml/math/readme.md
index 6891d2a9f..9f541996c 100644
--- a/src/net/sourceforge/plantuml/math/readme.md
+++ b/src/net/sourceforge/plantuml/math/readme.md
@@ -11,9 +11,9 @@ This package provides classes used to manage [PlantUML ASCII Math](https://plant
- [JLaTeXMath](https://scilab.gitlab.io/legacy_wiki/JLaTeXMath)
## Credit
-- [:octocat:Asciimath/Asciimathml](https://github.com/asciimath/asciimathml/tree/master/asciimath-based)
+- :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)
+- :octocat: [Opencollab/Jlatexmath](https://github.com/opencollab/jlatexmath)
## Dependency _(if available)_
- `org.scilab.forge.jlatexmath`
diff --git a/src/net/sourceforge/plantuml/nwdiag/readme.md b/src/net/sourceforge/plantuml/nwdiag/readme.md
index 67ed99f69..7049cce06 100644
--- a/src/net/sourceforge/plantuml/nwdiag/readme.md
+++ b/src/net/sourceforge/plantuml/nwdiag/readme.md
@@ -11,6 +11,7 @@ This package provides classes used to manage [PlantUML Network Diagram (nwdiag)]
## Credit or Inspiration
- [`nwdiag` of Takeshi Komiya](http://blockdiag.com/en/nwdiag/nwdiag-examples.html)
+- :octocat: [ Blockdiag/Nwdiag](https://github.com/blockdiag/nwdiag)
## Misc.
diff --git a/src/net/sourceforge/plantuml/openiconic/package-info.java b/src/net/sourceforge/plantuml/openiconic/package-info.java
new file mode 100644
index 000000000..33b17661f
--- /dev/null
+++ b/src/net/sourceforge/plantuml/openiconic/package-info.java
@@ -0,0 +1,9 @@
+/**
+ * Provides classes used to manage
+ *
+ * PlantUML Openiconic icon set.
+ *
+ * @see net.sourceforge.plantuml.emoji
+ *
+ */
+package net.sourceforge.plantuml.openiconic;
diff --git a/src/net/sourceforge/plantuml/openiconic/readme.md b/src/net/sourceforge/plantuml/openiconic/readme.md
new file mode 100644
index 000000000..e540368be
--- /dev/null
+++ b/src/net/sourceforge/plantuml/openiconic/readme.md
@@ -0,0 +1,10 @@
+# Directory Documentation for `openiconic`
+
+## Description
+This package provides classes used to manage [PlantUML Openiconic](https://plantuml.com/openiconic) icon set.
+
+## Link
+- [PlantUML Openiconic](https://plantuml.com/openiconic) icon set
+
+## Credit
+- :octocat: [Iconic/Open-iconic](https://github.com/iconic/open-iconic)
diff --git a/src/net/sourceforge/plantuml/png/package-info.java b/src/net/sourceforge/plantuml/png/package-info.java
index 197101bd8..51f7678f5 100644
--- a/src/net/sourceforge/plantuml/png/package-info.java
+++ b/src/net/sourceforge/plantuml/png/package-info.java
@@ -1,7 +1,7 @@
/**
* Provides classes used to manage
- *
- * PDF output format.
+ *
+ * PNG output format.
*
*/
-package net.sourceforge.plantuml.pdf;
+package net.sourceforge.plantuml.png;
diff --git a/src/net/sourceforge/plantuml/png/readme.md b/src/net/sourceforge/plantuml/png/readme.md
index 581611d49..94f8de7b2 100644
--- a/src/net/sourceforge/plantuml/png/readme.md
+++ b/src/net/sourceforge/plantuml/png/readme.md
@@ -1,10 +1,10 @@
-# Directory Documentation for `pdf`
+# Directory Documentation for `png`
## Description
-This package provides classes used to export diagram to a [PDF](https://plantuml.com/pdf) output format.
+This package provides classes used to export diagram to a [PNG](https://plantuml.com/en/command-line#458de91d76a8569c) output format.
## Link
-- [PDF](https://plantuml.com/pdf)
+- [PNG output format](https://plantuml.com/en/command-line#458de91d76a8569c)
## Reference
-- [PDF _(on Wikipedia)_](https://en.wikipedia.org/wiki/PDF)
+- [PNG _(on Wikipedia)_](https://en.wikipedia.org/wiki/PNG)
diff --git a/src/net/sourceforge/plantuml/posimo/package-info.java b/src/net/sourceforge/plantuml/posimo/package-info.java
new file mode 100644
index 000000000..24e3131d9
--- /dev/null
+++ b/src/net/sourceforge/plantuml/posimo/package-info.java
@@ -0,0 +1,6 @@
+/**
+ * Provides classes used to manage
+ * Positioning Calculation.
+ *
+ */
+package net.sourceforge.plantuml.posimo;
diff --git a/src/net/sourceforge/plantuml/posimo/readme.md b/src/net/sourceforge/plantuml/posimo/readme.md
new file mode 100644
index 000000000..f9e2e8596
--- /dev/null
+++ b/src/net/sourceforge/plantuml/posimo/readme.md
@@ -0,0 +1,42 @@
+# Directory Documentation for `posimo`
+
+## Description
+This package provides classes used to manage Positioning Calculation.
+
+## Diagram
+
+```mermaid
+classDiagram
+class Positionable {
+ + Dimension2D getSize();
+ + Point2D getPosition();
+}
+
+class Clusterable {
+ +Cluster getParent();
+}
+
+Positionable <|-- Clusterable
+
+class Cluster
+
+Cluster *-- Cluster : subclusters
+Clusterable <|.. Cluster
+Cluster *-- Block
+Clusterable <|.. Block
+
+Path *-- "2" Cluster
+Path --> Label : has one
+Positionable <|-- Label
+
+SimpleDrawer --> Cluster
+SimpleDrawer *--> Path
+
+class GraphvizSolver {
+ + Dimension2D solve(Cluster root, Collection~Path~ paths)
+}
+GraphvizSolver --> Cluster
+GraphvizSolver *--> Path
+```
+
+_(src: [`data.txt`](./data.txt))_
\ No newline at end of file
diff --git a/src/net/sourceforge/plantuml/preproc/package-info.java b/src/net/sourceforge/plantuml/preproc/package-info.java
new file mode 100644
index 000000000..6178bc926
--- /dev/null
+++ b/src/net/sourceforge/plantuml/preproc/package-info.java
@@ -0,0 +1,10 @@
+/**
+ * Provides classes used to manage
+ *
+ * Preprocessing of PlantUML input.
+ *
+ * @see net.sourceforge.plantuml.preproc2
+ * @see net.sourceforge.plantuml.tim
+ *
+ */
+package net.sourceforge.plantuml.preproc;
diff --git a/src/net/sourceforge/plantuml/preproc/readme.md b/src/net/sourceforge/plantuml/preproc/readme.md
new file mode 100644
index 000000000..a2495b44a
--- /dev/null
+++ b/src/net/sourceforge/plantuml/preproc/readme.md
@@ -0,0 +1,10 @@
+# Directory Documentation for `preproc`
+
+## Description
+This package provides classes used to manage [PlantUML Preprocessing](https://plantuml.com/preprocessing).
+
+## See also
+### [Legacy] Preprocessing (directory)
+- [`preproc2`](../preproc2/)
+### Current Preprocessing (directory)
+- [`tim`](../tim/)
diff --git a/src/net/sourceforge/plantuml/preproc2/package-info.java b/src/net/sourceforge/plantuml/preproc2/package-info.java
new file mode 100644
index 000000000..f65a48f77
--- /dev/null
+++ b/src/net/sourceforge/plantuml/preproc2/package-info.java
@@ -0,0 +1,10 @@
+/**
+ * Provides classes used to manage
+ *
+ * Preprocessing of PlantUML input.
+ *
+ * @see net.sourceforge.plantuml.preproc
+ * @see net.sourceforge.plantuml.tim
+ *
+ */
+package net.sourceforge.plantuml.preproc2;
diff --git a/src/net/sourceforge/plantuml/preproc2/readme.md b/src/net/sourceforge/plantuml/preproc2/readme.md
new file mode 100644
index 000000000..2bb26f68f
--- /dev/null
+++ b/src/net/sourceforge/plantuml/preproc2/readme.md
@@ -0,0 +1,10 @@
+# Directory Documentation for `preproc`
+
+## Description
+This package provides classes used to manage [PlantUML Preprocessing](https://plantuml.com/preprocessing).
+
+## See also
+### [Legacy] Preprocessing (directory)
+- [`preproc`](../preproc/)
+### Current Preprocessing (directory)
+- [`tim`](../tim/)
diff --git a/src/net/sourceforge/plantuml/project/readme.md b/src/net/sourceforge/plantuml/project/readme.md
index 714f91eba..aecf0ce87 100644
--- a/src/net/sourceforge/plantuml/project/readme.md
+++ b/src/net/sourceforge/plantuml/project/readme.md
@@ -8,8 +8,3 @@ This package provides classes used to manage [PlantUML Gantt Diagram](https://pl
## Reference
- [Gantt chart _(on Wikipedia)_](https://en.wikipedia.org/wiki/Gantt_chart)
-
-## Credit
-
-## Misc.
-
diff --git a/src/net/sourceforge/plantuml/real/package-info.java b/src/net/sourceforge/plantuml/real/package-info.java
new file mode 100644
index 000000000..40f6f0528
--- /dev/null
+++ b/src/net/sourceforge/plantuml/real/package-info.java
@@ -0,0 +1,6 @@
+/**
+ * Provides classes used to manage
+ * Real Number.
+ *
+ */
+package net.sourceforge.plantuml.real;
diff --git a/src/net/sourceforge/plantuml/real/readme.md b/src/net/sourceforge/plantuml/real/readme.md
new file mode 100644
index 000000000..e369c07a6
--- /dev/null
+++ b/src/net/sourceforge/plantuml/real/readme.md
@@ -0,0 +1,7 @@
+# Directory Documentation for `real`
+
+## Description
+This package provides classes used to manage Real Number.
+
+## Reference
+- [Real number _(on Wikipedia)_](https://en.wikipedia.org/wiki/Real_number)
diff --git a/src/net/sourceforge/plantuml/regexdiagram/package-info.java b/src/net/sourceforge/plantuml/regexdiagram/package-info.java
new file mode 100644
index 000000000..3837182e2
--- /dev/null
+++ b/src/net/sourceforge/plantuml/regexdiagram/package-info.java
@@ -0,0 +1,9 @@
+/**
+ * Provides classes used to manage
+ *
+ * Regular expression (Regex) Diagram.
+ *
+ * @see net.sourceforge.plantuml.ebnf
+ *
+ */
+package net.sourceforge.plantuml.regexdiagram;
diff --git a/src/net/sourceforge/plantuml/regexdiagram/readme.md b/src/net/sourceforge/plantuml/regexdiagram/readme.md
new file mode 100644
index 000000000..dca02c9cb
--- /dev/null
+++ b/src/net/sourceforge/plantuml/regexdiagram/readme.md
@@ -0,0 +1,17 @@
+# Directory Documentation for `regexdiagram`
+
+## Description
+This package provides classes used to manage [PlantUML Regular expression (Regex) Diagram](https://plantuml.com/regex).
+
+## Link
+- [PlantUML Regular expression (Regex) Diagram](https://plantuml.com/regex)
+
+## Reference
+- [Regular expression _(on Wikipedia)_](https://en.wikipedia.org/wiki/Regular_expression)
+
+## See also
+- [PlantUML Extended Backus–Naur Form (EBNF) Diagram](https://plantuml.com/ebnf)
+- [`ebnf`](../ebnf/) _(directory on plantuml)_
+
+## Misc.
+
diff --git a/src/net/sourceforge/plantuml/salt/package-info.java b/src/net/sourceforge/plantuml/salt/package-info.java
new file mode 100644
index 000000000..26cfc76ce
--- /dev/null
+++ b/src/net/sourceforge/plantuml/salt/package-info.java
@@ -0,0 +1,7 @@
+/**
+ * Provides classes used to manage
+ *
+ * Salt (or Wireframe) Diagram.
+ *
+ */
+package net.sourceforge.plantuml.salt;
diff --git a/src/net/sourceforge/plantuml/salt/readme.md b/src/net/sourceforge/plantuml/salt/readme.md
new file mode 100644
index 000000000..8b7ef7fc6
--- /dev/null
+++ b/src/net/sourceforge/plantuml/salt/readme.md
@@ -0,0 +1,11 @@
+# Directory Documentation for `salt`
+
+## Description
+This package provides classes used to manage [PlantUML Salt (or Wireframe) Diagram](https://plantuml.com/salt).
+
+## Link
+- [Salt (or Wireframe) Diagram](https://plantuml.com/salt)
+
+## Reference
+- [Wireframe _(on Wikipedia)_](https://en.wikipedia.org/wiki/Website_wireframe)
+
diff --git a/src/net/sourceforge/plantuml/sdot/package-info.java b/src/net/sourceforge/plantuml/sdot/package-info.java
new file mode 100644
index 000000000..24b4bad5b
--- /dev/null
+++ b/src/net/sourceforge/plantuml/sdot/package-info.java
@@ -0,0 +1,12 @@
+/**
+ * Provides classes used to manage
+ *
+ * Smetana (internal port of GraphViz in plantuml)
+ * for layout engine.
+ *
+ * @see net.sourceforge.plantuml.dot
+ * @see net.sourceforge.plantuml.elk
+ * @see net.sourceforge.plantuml.vizjs
+ *
+ */
+package net.sourceforge.plantuml.sdot;
diff --git a/src/net/sourceforge/plantuml/sdot/readme.md b/src/net/sourceforge/plantuml/sdot/readme.md
new file mode 100644
index 000000000..fa9563fa0
--- /dev/null
+++ b/src/net/sourceforge/plantuml/sdot/readme.md
@@ -0,0 +1,26 @@
+# Directory Documentation for `sdot`
+
+## Description
+This package provides classes used to export diagram with the [Smetana _(internal port of GraphViz in plantuml)_](https://plantuml.com/smetana02) layout engine.
+
+## Link
+- [PlantUML Smetana _(internal port of GraphViz in plantuml)_](https://plantuml.com/smetana02)
+
+## Credit
+- :octocat: [plantuml/smetana](https://github.com/plantuml/smetana) _(included in PlantUML)_
+ - [`src/gen`](../../../../gen)
+ - [`src/smetana/core`](../../../../smetana/core)
+ - [`src/h`](../../../../h)
+
+## See also other engines
+- [GraphViz dot](https://plantuml.com/graphviz-dot)
+ - [`plantuml/dot`](../dot/) _(included in PlantUML)_
+- [PlantUML 'Eclipse Layout Kernel (ELK)' Engine](https://plantuml.com/elk)
+ - [`elk/proxy`](./proxy/) _(included in PlantUML)_
+- [PlantUML Vizjs _(a port to Javascript of GraphViz)_](https://plantuml.com/vizjs)
+ - [`plantuml/vizjs`](../vizjs/) _(included in PlantUML)_
+ - :octocat: [Plantuml/Vizjs](https://github.com/plantuml/vizjs) _(not included in `plantuml/plantuml`)_
+
+## Misc.
+- [Bedřich Smetana _(on Wikipedia)_](https://en.wikipedia.org/wiki/Bed%C5%99ich_Smetana)
+- [Smetana _(on Wikipedia)_](https://en.wikipedia.org/wiki/Smetana_(disambiguation))
diff --git a/src/net/sourceforge/plantuml/security/package-info.java b/src/net/sourceforge/plantuml/security/package-info.java
new file mode 100644
index 000000000..11f5520c0
--- /dev/null
+++ b/src/net/sourceforge/plantuml/security/package-info.java
@@ -0,0 +1,7 @@
+/**
+ * Provides classes used to manage
+ *
+ * PlantUML Security.
+ *
+ */
+package net.sourceforge.plantuml.security;
diff --git a/src/net/sourceforge/plantuml/security/readme.md b/src/net/sourceforge/plantuml/security/readme.md
new file mode 100644
index 000000000..86f4b3be5
--- /dev/null
+++ b/src/net/sourceforge/plantuml/security/readme.md
@@ -0,0 +1,18 @@
+# Directory Documentation for `security`
+
+## Description
+This package provides classes used to manage [PlantUML Security](https://plantuml.com/security).
+
+## Link
+
+### Security
+- [Security Profile](https://plantuml.com/security)
+
+### URL authentication
+
+| Auth. Name Doc. | Directory |
+| --- | --- |
+| [URL authentication](https://plantuml.com/url-authentication) | [`/authentication/`](./authentication/) |
+| [BasicAuth configuration](https://plantuml.com/url-basicauth) | [`/authentication/basicauth/`](./authentication/basicauth/) |
+| [OAuth2 configuration](https://plantuml.com/en/url-oauth) | [`/authentication/oauth/`](./authentication/oauth/) |
+| [Token Auth configuration](https://plantuml.com/en/url-tokenauth) | [`/authentication/token/`](./authentication/token/) |
\ No newline at end of file
diff --git a/src/net/sourceforge/plantuml/sequencediagram/package-info.java b/src/net/sourceforge/plantuml/sequencediagram/package-info.java
new file mode 100644
index 000000000..ec5adb018
--- /dev/null
+++ b/src/net/sourceforge/plantuml/sequencediagram/package-info.java
@@ -0,0 +1,15 @@
+/**
+ * Provides classes used to manage
+ *
+ * Sequence Diagram.
+ *
+ *
+ * There are 2 architectures:
+ *
+ * - {@link net.sourceforge.plantuml.sequencediagram.puma} (the current)
+ * - {@link net.sourceforge.plantuml.sequencediagram.teoz} (the new)
+ * Can be activated using !pragma teoz true
+ *
+ *
+ */
+package net.sourceforge.plantuml.sequencediagram;
diff --git a/src/net/sourceforge/plantuml/sequencediagram/readme.md b/src/net/sourceforge/plantuml/sequencediagram/readme.md
new file mode 100644
index 000000000..c947b37bc
--- /dev/null
+++ b/src/net/sourceforge/plantuml/sequencediagram/readme.md
@@ -0,0 +1,20 @@
+# Directory Documentation for `sequencediagram`
+
+## Description
+This package provides classes used to manage [PlantUML Sequence Diagram](https://plantuml.com/sequence-diagram).
+
+There are [2 architectures](https://plantuml.com/teoz):
+- [`puma`](./puma/) _(the current)_
+- [`teoz`](./teoz/) _(the new)_
+
+## Link
+- [PlantUML Sequence Diagram](https://plantuml.com/sequence-diagram)
+
+## Reference
+- [Sequence Diagram _(on Wikipedia)_](https://en.wikipedia.org/wiki/Sequence_diagram)
+
+## Credit
+
+## Misc.
+- [Puma _(on Wikipedia)_](https://en.wikipedia.org/wiki/Puma)
+- [Téoz _(on Wikipedia)_](https://en.wikipedia.org/wiki/T%C3%A9oz)
diff --git a/src/net/sourceforge/plantuml/skin/package-info.java b/src/net/sourceforge/plantuml/skin/package-info.java
new file mode 100644
index 000000000..592e6cbb2
--- /dev/null
+++ b/src/net/sourceforge/plantuml/skin/package-info.java
@@ -0,0 +1,10 @@
+/**
+ * Provides classes used to manage Skin and
+ *
+ * Skinparameter.
+ *
+ * @see net.sourceforge.plantuml.style
+ * @see net.sourceforge.plantuml.theme
+ *
+ */
+package net.sourceforge.plantuml.skin;
diff --git a/src/net/sourceforge/plantuml/skin/readme.md b/src/net/sourceforge/plantuml/skin/readme.md
new file mode 100644
index 000000000..77105bb25
--- /dev/null
+++ b/src/net/sourceforge/plantuml/skin/readme.md
@@ -0,0 +1,10 @@
+# Directory Documentation for `skin`
+
+## Description
+This package provides classes used to manage `Skin` and `Skinparameter`.
+
+## Reference
+- [PlantUML Skinparam command](https://plantuml.com/skinparam)
+
+## See also
+- [`style/FromSkinparamToStyle.java`](../style/FromSkinparamToStyle.java)
diff --git a/src/net/sourceforge/plantuml/statediagram/package-info.java b/src/net/sourceforge/plantuml/statediagram/package-info.java
new file mode 100644
index 000000000..741af76e1
--- /dev/null
+++ b/src/net/sourceforge/plantuml/statediagram/package-info.java
@@ -0,0 +1,7 @@
+/**
+ * Provides classes used to manage
+ *
+ * State Diagram.
+ *
+ */
+package net.sourceforge.plantuml.statediagram;
diff --git a/src/net/sourceforge/plantuml/statediagram/readme.md b/src/net/sourceforge/plantuml/statediagram/readme.md
new file mode 100644
index 000000000..478d358c9
--- /dev/null
+++ b/src/net/sourceforge/plantuml/statediagram/readme.md
@@ -0,0 +1,16 @@
+# Directory Documentation for `statediagram`
+
+## Description
+This package provides classes used to manage [PlantUML State Diagram](https://plantuml.com/state-diagram).
+
+## Link
+- [PlantUML State Diagram](https://plantuml.com/state-diagram)
+
+## Reference
+- [UML State machine _(on Wikipedia)_](https://en.wikipedia.org/wiki/UML_state_machine)
+- [Finite-state machine _(on Wikipedia)_](https://en.wikipedia.org/wiki/Finite-state_machine)
+
+## Credit
+
+## Misc.
+
diff --git a/src/net/sourceforge/plantuml/stats/package-info.java b/src/net/sourceforge/plantuml/stats/package-info.java
new file mode 100644
index 000000000..d93fe34bd
--- /dev/null
+++ b/src/net/sourceforge/plantuml/stats/package-info.java
@@ -0,0 +1,7 @@
+/**
+ * Provides classes used to manage
+ *
+ * Statistics.
+ *
+ */
+package net.sourceforge.plantuml.stats;
diff --git a/src/net/sourceforge/plantuml/stats/readme.md b/src/net/sourceforge/plantuml/stats/readme.md
new file mode 100644
index 000000000..4c5d5b225
--- /dev/null
+++ b/src/net/sourceforge/plantuml/stats/readme.md
@@ -0,0 +1,7 @@
+# Directory Documentation for `stats`
+
+## Description
+This package provides classes used to manage [PlantUML Statistics](https://plantuml.com/statistics-report).
+
+## Link
+- [PlantUML Statistics](https://plantuml.com/statistics-report)
diff --git a/src/net/sourceforge/plantuml/stereo/package-info.java b/src/net/sourceforge/plantuml/stereo/package-info.java
new file mode 100644
index 000000000..12346668c
--- /dev/null
+++ b/src/net/sourceforge/plantuml/stereo/package-info.java
@@ -0,0 +1,5 @@
+/**
+ * Provides classes used to manage Stereotype.
+ *
+ */
+package net.sourceforge.plantuml.stereo;
diff --git a/src/net/sourceforge/plantuml/stereo/readme.md b/src/net/sourceforge/plantuml/stereo/readme.md
new file mode 100644
index 000000000..d6d95946e
--- /dev/null
+++ b/src/net/sourceforge/plantuml/stereo/readme.md
@@ -0,0 +1,11 @@
+# Directory Documentation for `stereo`
+
+## Description
+This package provides classes used to manage `<>`.
+
+## Link
+- ['Notes and stereotypes' on PlantUML 'Class'](https://plantuml.com/en/class-diagram#59c91a18bcc97bb0)
+- ['Stereotype' tag search on PlantUML Forum](https://forum.plantuml.net/tag/stereotype)
+
+## Reference
+- [Stereotype (UML) _(on Wikipedia)_](https://en.wikipedia.org/wiki/Stereotype_(UML))
\ No newline at end of file
diff --git a/src/net/sourceforge/plantuml/style/package-info.java b/src/net/sourceforge/plantuml/style/package-info.java
new file mode 100644
index 000000000..0c0ed9264
--- /dev/null
+++ b/src/net/sourceforge/plantuml/style/package-info.java
@@ -0,0 +1,10 @@
+/**
+ * Provides classes used to manage
+ *
+ * Style.
+ *
+ * @see net.sourceforge.plantuml.skin
+ * @see net.sourceforge.plantuml.theme
+ *
+ */
+package net.sourceforge.plantuml.style;
diff --git a/src/net/sourceforge/plantuml/style/readme.md b/src/net/sourceforge/plantuml/style/readme.md
new file mode 100644
index 000000000..0d4c36ea2
--- /dev/null
+++ b/src/net/sourceforge/plantuml/style/readme.md
@@ -0,0 +1,13 @@
+# Directory Documentation for `style`
+
+## Description
+This package provides classes used to manage `Style`.
+
+## Reference
+- [PlantUML Style evolution](https://plantuml.com/style-evolution)
+
+
+| Element that can be styled | Property to style |
+| --- | --- |
+| [`SName.java`](./SName.java) | [`PName.java`](./PName.java) |
+
diff --git a/src/net/sourceforge/plantuml/sudoku/package-info.java b/src/net/sourceforge/plantuml/sudoku/package-info.java
new file mode 100644
index 000000000..1f7e49812
--- /dev/null
+++ b/src/net/sourceforge/plantuml/sudoku/package-info.java
@@ -0,0 +1,7 @@
+/**
+ * Provides classes used to manage
+ *
+ * Sudoku Grid on PlantUML.
+ *
+ */
+package net.sourceforge.plantuml.sudoku;
diff --git a/src/net/sourceforge/plantuml/sudoku/readme.md b/src/net/sourceforge/plantuml/sudoku/readme.md
new file mode 100644
index 000000000..d296cb442
--- /dev/null
+++ b/src/net/sourceforge/plantuml/sudoku/readme.md
@@ -0,0 +1,18 @@
+# Directory Documentation for `sudoku`
+
+## Description
+This package provides classes used to manage [Sudoku Grid](https://plantuml.com/sudoku).
+
+## Link
+- [Sudoku Diagram](https://plantuml.com/sudoku)
+
+## Reference
+- [Sudoku _(on Wikipedia)_](https://en.wikipedia.org/wiki/sudoku)
+
+## Credit
+- [`DLXEngine.java` of Rolf Sandberg](http://www.rolfsandberg.se/content/klepphelmer/Sudoku/DLXEngine.java)
+- [Rolfs Sudoku page](http://www.rolfsandberg.se/content/klepphelmer/Sudoku/)
+- [`DLXEngine.java`](./DLXEngine.java) _(included in PlantUML)_
+
+## Misc.
+
diff --git a/src/net/sourceforge/plantuml/svek/package-info.java b/src/net/sourceforge/plantuml/svek/package-info.java
new file mode 100644
index 000000000..01b2132cb
--- /dev/null
+++ b/src/net/sourceforge/plantuml/svek/package-info.java
@@ -0,0 +1,9 @@
+/**
+ * Provides classes used to manage
+ *
+ * PlantUML Svek Architecture.
+ *
+ * @see net.sourceforge.plantuml.dot
+ *
+ */
+package net.sourceforge.plantuml.svek;
diff --git a/src/net/sourceforge/plantuml/svek/readme.md b/src/net/sourceforge/plantuml/svek/readme.md
new file mode 100644
index 000000000..24e753e51
--- /dev/null
+++ b/src/net/sourceforge/plantuml/svek/readme.md
@@ -0,0 +1,13 @@
+# Directory Documentation for `svek`
+
+## Description
+This package provides classes used to manage [PlantUML Svek Architecture](https://plantuml.com/svek).
+
+## Link
+- [PlantUML Svek Architecture](https://plantuml.com/svek)
+- [GraphViz dot](https://plantuml.com/graphviz-dot)
+ - [`plantuml/dot`](../dot/)
+
+## Misc.
+- [The Good Soldier Švejk _(on Wikipedia)_](https://en.wikipedia.org/wiki/The_Good_Soldier_%C5%A0vejk)
+- [Svek _(on Wiktionary)_](https://en.wiktionary.org/wiki/svek)
\ No newline at end of file
diff --git a/src/net/sourceforge/plantuml/swing/package-info.java b/src/net/sourceforge/plantuml/swing/package-info.java
new file mode 100644
index 000000000..bfac8326b
--- /dev/null
+++ b/src/net/sourceforge/plantuml/swing/package-info.java
@@ -0,0 +1,7 @@
+/**
+ * Provides classes used to manage
+ *
+ * PlantUML GUI.
+ *
+ */
+package net.sourceforge.plantuml.swing;
diff --git a/src/net/sourceforge/plantuml/swing/readme.md b/src/net/sourceforge/plantuml/swing/readme.md
new file mode 100644
index 000000000..1961b5137
--- /dev/null
+++ b/src/net/sourceforge/plantuml/swing/readme.md
@@ -0,0 +1,15 @@
+# Directory Documentation for `swing`
+
+## Description
+This package provides classes used to manage [PlantUML GUI](https://plantuml.com/gui).
+
+## Link
+- [PlantUML GUI](https://plantuml.com/gui)
+
+## Reference
+### AWT
+- [Abstract Window Toolkit (AWT) _(on Wikipedia)_](https://en.wikipedia.org/wiki/Abstract_Window_Toolkit)
+- [The AWT documentation](https://docs.oracle.com/javase/8/docs/technotes/guides/awt/)
+### Swing
+- [Swing _(on Wikipedia)_](https://en.wikipedia.org/wiki/Swing_(Java))
+- [The Swing API documentation](https://docs.oracle.com/javase/8/docs/technotes/guides/swing/)
diff --git a/src/net/sourceforge/plantuml/syntax/package-info.java b/src/net/sourceforge/plantuml/syntax/package-info.java
new file mode 100644
index 000000000..7b0d33847
--- /dev/null
+++ b/src/net/sourceforge/plantuml/syntax/package-info.java
@@ -0,0 +1,8 @@
+/**
+ * Provides classes used to manage Syntax and Language (use to print language, and 'cypher').
+ *
+ * @see net.sourceforge.plantuml.OptionPrint#printLanguage
+ * @see net.sourceforge.plantuml.utils.Cypher
+ *
+ */
+package net.sourceforge.plantuml.syntax;
diff --git a/src/net/sourceforge/plantuml/syntax/readme.md b/src/net/sourceforge/plantuml/syntax/readme.md
new file mode 100644
index 000000000..731eb542f
--- /dev/null
+++ b/src/net/sourceforge/plantuml/syntax/readme.md
@@ -0,0 +1,33 @@
+# Directory Documentation for `syntax`
+
+## Description
+This package provides classes used to manage PlantUML Syntax and Language _(use to print language, and 'cypher')_.
+
+## Reference
+- [QA-3741](https://forum.plantuml.net/3741/plantuml-jar-language-does-not-report-all-keywords)
+- [QA-5329](https://forum.plantuml.net/5329/language-definition)
+- [QA-10648](https://forum.plantuml.net/10648/keywords-predefined-symbols-codeless-language-module-bbedit)
+
+## Usage
+### With the `-language` option
+```sh
+java -jar plantuml.jar -language
+```
+In order to have the PlantUML list of:
+- `type`,
+- `keyword`,
+- `preprocessor`,
+- `skinparameter`,
+- `color`.
+
+### With the `-cypher` option
+```sh
+java -jar plantuml.jar -cypher file.puml
+```
+That generates a `file.preproc`.
+
+Ref.:
+- [Cypher option](https://plantuml.com/en/faq#76ee48737d9f7a1a)
+
+See also code here:
+- [`utils/Cypher.java`](../utils/Cypher.java)
diff --git a/src/net/sourceforge/plantuml/telnet/package-info.java b/src/net/sourceforge/plantuml/telnet/package-info.java
new file mode 100644
index 000000000..41d2135e5
--- /dev/null
+++ b/src/net/sourceforge/plantuml/telnet/package-info.java
@@ -0,0 +1,8 @@
+/**
+ * Provides classes used to manage
+ * Telnet server.
+ *
+ * @see net.sourceforge.plantuml.ftp
+ *
+ */
+package net.sourceforge.plantuml.telnet;
diff --git a/src/net/sourceforge/plantuml/telnet/readme.md b/src/net/sourceforge/plantuml/telnet/readme.md
new file mode 100644
index 000000000..8eb1295ed
--- /dev/null
+++ b/src/net/sourceforge/plantuml/telnet/readme.md
@@ -0,0 +1,7 @@
+# Directory Documentation for `telnet`
+
+## Description
+This package provides classes used to manage a Telnet server.
+
+## Reference
+- [Telnet _(on Wikipedia)_](https://en.wikipedia.org/wiki/Telnet)
diff --git a/src/net/sourceforge/plantuml/theme/package-info.java b/src/net/sourceforge/plantuml/theme/package-info.java
new file mode 100644
index 000000000..0e93314ec
--- /dev/null
+++ b/src/net/sourceforge/plantuml/theme/package-info.java
@@ -0,0 +1,10 @@
+/**
+ * Provides classes used to manage
+ *
+ * Theme.
+ *
+ * @see net.sourceforge.plantuml.skin
+ * @see net.sourceforge.plantuml.style
+ *
+ */
+package net.sourceforge.plantuml.theme;
diff --git a/src/net/sourceforge/plantuml/theme/readme.md b/src/net/sourceforge/plantuml/theme/readme.md
new file mode 100644
index 000000000..48a6b93ff
--- /dev/null
+++ b/src/net/sourceforge/plantuml/theme/readme.md
@@ -0,0 +1,10 @@
+# Directory Documentation for `theme`
+
+## Description
+This package provides classes used to manage `Theme`.
+
+## Reference
+- [PlantUML Theme](https://plantuml.com/theme)
+
+## See also
+- [`themes` directory](../../../../../themes/)
diff --git a/src/net/sourceforge/plantuml/tikz/package-info.java b/src/net/sourceforge/plantuml/tikz/package-info.java
new file mode 100644
index 000000000..c5f2ce5f3
--- /dev/null
+++ b/src/net/sourceforge/plantuml/tikz/package-info.java
@@ -0,0 +1,7 @@
+/**
+ * Provides classes used to manage
+ *
+ * LaTeX (with TikZ) output format.
+ *
+ */
+package net.sourceforge.plantuml.tikz;
diff --git a/src/net/sourceforge/plantuml/tikz/readme.md b/src/net/sourceforge/plantuml/tikz/readme.md
new file mode 100644
index 000000000..1211037ff
--- /dev/null
+++ b/src/net/sourceforge/plantuml/tikz/readme.md
@@ -0,0 +1,12 @@
+# Directory Documentation for `tikz`
+
+## Description
+This package provides classes used to export diagram to a [LaTeX (with TikZ)](https://plantuml.com/latex) output format.
+
+## Link
+- [LaTeX (with TikZ) output format](https://plantuml.com/latex)
+
+## Reference
+- [QA-1798](https://forum.plantuml.net/1798/latex-tikz-support)
+- [LaTeX _(on Wikipedia)_](https://en.wikipedia.org/wiki/LaTeX)
+- [PGF/TikZ _(on Wikipedia)_](https://en.wikipedia.org/wiki/PGF/TikZ)
diff --git a/src/net/sourceforge/plantuml/tim/package-info.java b/src/net/sourceforge/plantuml/tim/package-info.java
new file mode 100644
index 000000000..d185cc4bd
--- /dev/null
+++ b/src/net/sourceforge/plantuml/tim/package-info.java
@@ -0,0 +1,11 @@
+/**
+ * Provides classes used to manage
+ *
+ * Preprocessing of PlantUML input.
+ *
+ * @see net.sourceforge.plantuml.text.TLineType
+ * @see net.sourceforge.plantuml.preproc
+ * @see net.sourceforge.plantuml.preproc2
+ *
+ */
+package net.sourceforge.plantuml.tim;
diff --git a/src/net/sourceforge/plantuml/tim/readme.md b/src/net/sourceforge/plantuml/tim/readme.md
new file mode 100644
index 000000000..83cc4f58d
--- /dev/null
+++ b/src/net/sourceforge/plantuml/tim/readme.md
@@ -0,0 +1,22 @@
+# Directory Documentation for `tim`
+
+## Description
+This package provides classes used to manage [PlantUML Preprocessing](https://plantuml.com/preprocessing).
+
+## Link of Current Preprocessing (documentation)
+- [PlantUML Preprocessing](https://plantuml.com/preprocessing)
+- [PlantUML Preprocessing JSON](https://plantuml.com/preprocessing-json)
+
+## See also [legacy] Preprocessing (directory)
+- [`preproc`](../preproc/)
+- [`preproc2`](../preproc2/)
+
+## Reference
+- [Shunting yard algorithm _(on Wikipedia)_](https://en.wikipedia.org/wiki/Shunting_yard_algorithm)
+- [Reverse Polish notation _(on Wikipedia)_](https://en.wikipedia.org/wiki/Reverse_Polish_notation)
+- [Boyer–Moore–Horspool algorithm _(on Wikipedia)_](https://en.wikipedia.org/wiki/Boyer%E2%80%93Moore%E2%80%93Horspool_algorithm)
+- [String-searching algorithm _(on Wikipedia)_](https://en.wikipedia.org/wiki/String-searching_algorithm)
+- [Trie _(on Wikipedia)_](https://en.wikipedia.org/wiki/Trie)
+
+## Misc.
+- [Tim (given name) _(on Wikipedia)_](https://en.wikipedia.org/wiki/Tim_(given_name))
diff --git a/src/net/sourceforge/plantuml/timingdiagram/package-info.java b/src/net/sourceforge/plantuml/timingdiagram/package-info.java
new file mode 100644
index 000000000..07413f2ce
--- /dev/null
+++ b/src/net/sourceforge/plantuml/timingdiagram/package-info.java
@@ -0,0 +1,7 @@
+/**
+ * Provides classes used to manage
+ *
+ * Timing Diagram.
+ *
+ */
+package net.sourceforge.plantuml.timingdiagram;
diff --git a/src/net/sourceforge/plantuml/timingdiagram/readme.md b/src/net/sourceforge/plantuml/timingdiagram/readme.md
new file mode 100644
index 000000000..42a779f8e
--- /dev/null
+++ b/src/net/sourceforge/plantuml/timingdiagram/readme.md
@@ -0,0 +1,15 @@
+# Directory Documentation for `timingdiagram`
+
+## Description
+This package provides classes used to manage [PlantUML Timing Diagram](https://plantuml.com/timing-diagram).
+
+## Link
+- [PlantUML Timing Diagram](https://plantuml.com/timing-diagram)
+
+## Reference
+- [Timing diagram _(on Wikipedia)_](https://en.wikipedia.org/wiki/Timing_diagram_%28Unified_Modeling_Language%29)
+
+## Credit
+
+## Misc.
+
diff --git a/src/net/sourceforge/plantuml/url/package-info.java b/src/net/sourceforge/plantuml/url/package-info.java
new file mode 100644
index 000000000..2e1f9f89b
--- /dev/null
+++ b/src/net/sourceforge/plantuml/url/package-info.java
@@ -0,0 +1,13 @@
+/**
+ * Provides classes used to manage
+ * URL, CMap.
+ *
+ *
+ * Main use for:
+ *
+ *
+ */
+package net.sourceforge.plantuml.url;
diff --git a/src/net/sourceforge/plantuml/url/readme.md b/src/net/sourceforge/plantuml/url/readme.md
new file mode 100644
index 000000000..2824e0dd3
--- /dev/null
+++ b/src/net/sourceforge/plantuml/url/readme.md
@@ -0,0 +1,13 @@
+# Directory Documentation for `url`
+
+## Description
+This package provides classes used to manage `URL`, `CMap`.
+
+## Link
+- [PlantUML Link (URL)](https://plantuml.com/link)
+
+## Reference
+
+## Credit
+
+## Misc.
diff --git a/src/net/sourceforge/plantuml/version/package-info.java b/src/net/sourceforge/plantuml/version/package-info.java
new file mode 100644
index 000000000..a66481db0
--- /dev/null
+++ b/src/net/sourceforge/plantuml/version/package-info.java
@@ -0,0 +1,9 @@
+/**
+ * Provides classes used to manage
+ *
+ * PlantUML Version and
+ *
+ * PlantUML License.
+ *
+ */
+package net.sourceforge.plantuml.version;
diff --git a/src/net/sourceforge/plantuml/version/readme.md b/src/net/sourceforge/plantuml/version/readme.md
new file mode 100644
index 000000000..54e0755ee
--- /dev/null
+++ b/src/net/sourceforge/plantuml/version/readme.md
@@ -0,0 +1,9 @@
+# Directory Documentation for `version`
+
+## Description
+This package provides classes used to manage [PlantUML Version](https://plantuml.com/versioning-scheme)
+and [PlantUML License](https://plantuml.com/professional)
+
+## Link
+- [PlantUML Version](https://plantuml.com/versioning-scheme)
+- [PlantUML License](https://plantuml.com/professional)
diff --git a/src/net/sourceforge/plantuml/vizjs/package-info.java b/src/net/sourceforge/plantuml/vizjs/package-info.java
new file mode 100644
index 000000000..06816052b
--- /dev/null
+++ b/src/net/sourceforge/plantuml/vizjs/package-info.java
@@ -0,0 +1,29 @@
+/**
+ * Provides classes used to manage
+ *
+ * Vizjs (a port to Javascript of GraphViz)
+ * for layout engine.
+ *
+ *
+ * That uses this components:
+ *
+ *
+ * Ref.:
+ *
+ *
+ * @see net.sourceforge.plantuml.dot
+ * @see net.sourceforge.plantuml.elk
+ * @see net.sourceforge.plantuml.sdot
+ *
+ */
+package net.sourceforge.plantuml.vizjs;
diff --git a/src/net/sourceforge/plantuml/vizjs/readme.md b/src/net/sourceforge/plantuml/vizjs/readme.md
new file mode 100644
index 000000000..6f0a052a6
--- /dev/null
+++ b/src/net/sourceforge/plantuml/vizjs/readme.md
@@ -0,0 +1,23 @@
+# Directory Documentation for `vizjs`
+
+## Description
+This package provides classes used to export diagram with the [Vizjs _(a port to Javascript of GraphViz)_](https://plantuml.com/vizjs) layout engine.
+
+## Link
+- [PlantUML Vizjs _(a port to Javascript of GraphViz)_](https://plantuml.com/vizjs)
+
+## Credit
+- :octocat: [Mdaines/Viz.js](https://github.com/mdaines/viz.js) _(not included in `plantuml/plantuml`)_
+- :octocat: [Plantuml/Vizjs](https://github.com/plantuml/vizjs) _(not included in `plantuml/plantuml`)_
+
+## See also other engines
+- [GraphViz dot](https://plantuml.com/graphviz-dot)
+ - [`plantuml/dot`](../dot/) _(included in PlantUML)_
+- [PlantUML 'Eclipse Layout Kernel (ELK)' Engine](https://plantuml.com/elk)
+ - [`elk/proxy`](./proxy/) _(included in PlantUML)_
+- [Smetana _(internal port of GraphViz in plantuml)_](https://plantuml.com/smetana02) and :octocat: [plantuml/smetana](https://github.com/plantuml/smetana)
+ - [`plantuml/sdot`](../sdot/)
+ - [`src/gen`](../../../../gen)
+ - [`src/smetana/core`](../../../../smetana/core)
+ - [`src/h`](../../../../h)
+
diff --git a/src/net/sourceforge/plantuml/wbs/package-info.java b/src/net/sourceforge/plantuml/wbs/package-info.java
new file mode 100644
index 000000000..1090fa8d2
--- /dev/null
+++ b/src/net/sourceforge/plantuml/wbs/package-info.java
@@ -0,0 +1,7 @@
+/**
+ * Provides classes used to manage
+ *
+ * WBS Diagram.
+ *
+ */
+package net.sourceforge.plantuml.wbs;
diff --git a/src/net/sourceforge/plantuml/wbs/readme.md b/src/net/sourceforge/plantuml/wbs/readme.md
new file mode 100644
index 000000000..17236856e
--- /dev/null
+++ b/src/net/sourceforge/plantuml/wbs/readme.md
@@ -0,0 +1,16 @@
+# Directory Documentation for `wbs`
+
+## Description
+This package provides classes used to manage [PlantUML WBS Diagram](https://plantuml.com/wbs-diagram).
+
+## Link
+- [WBS Diagram](https://plantuml.com/wbs-diagram)
+
+## Reference
+- [Work breakdown structure (WBS) _(on Wikipedia)_](https://en.wikipedia.org/wiki/Work_breakdown_structure)
+- [Organizational chart _(on Wikipedia)_](https://en.wikipedia.org/wiki/Organizational_chart)
+
+## Credit
+
+## Misc.
+
diff --git a/src/net/sourceforge/plantuml/windowsdot/package-info.java b/src/net/sourceforge/plantuml/windowsdot/package-info.java
new file mode 100644
index 000000000..143c50882
--- /dev/null
+++ b/src/net/sourceforge/plantuml/windowsdot/package-info.java
@@ -0,0 +1,15 @@
+/**
+ * Provides classes used to manage
+ *
+ * an Embedded Windows Graphviz dot on plantuml.
+ *
+ *
+ * The source is:
+ *
+ *
+ *
+ */
+package net.sourceforge.plantuml.windowsdot;
diff --git a/src/net/sourceforge/plantuml/windowsdot/readme.md b/src/net/sourceforge/plantuml/windowsdot/readme.md
new file mode 100644
index 000000000..d13a6a60b
--- /dev/null
+++ b/src/net/sourceforge/plantuml/windowsdot/readme.md
@@ -0,0 +1,15 @@
+# Directory Documentation for `windowsdot`
+
+## Description
+This package provides classes used to manage [an Embedded Windows Graphviz dot](https://github.com/plantuml/graphviz-distributions) on plantuml.
+
+## Link
+- ["About the `graphviz.dat` file" on BUILDING.md](/BUILDING.md#-about-the-graphvizdat-file)
+
+## Reference
+- [Graphviz](https://graphviz.org)
+- [Graphviz _(on GitLab)_](https://gitlab.com/graphviz/graphviz/)
+
+## Credit
+ - :octocat: [Plantuml/Graphviz-distributions](https://github.com/plantuml/graphviz-distributions)
+
diff --git a/src/net/sourceforge/plantuml/wire/package-info.java b/src/net/sourceforge/plantuml/wire/package-info.java
new file mode 100644
index 000000000..cb8355dbe
--- /dev/null
+++ b/src/net/sourceforge/plantuml/wire/package-info.java
@@ -0,0 +1,7 @@
+/**
+ * Provides classes used to manage
+ *
+ * Wire or Block Diagram.
+ *
+ */
+package net.sourceforge.plantuml.wire;
diff --git a/src/net/sourceforge/plantuml/wire/readme.md b/src/net/sourceforge/plantuml/wire/readme.md
new file mode 100644
index 000000000..99ced0380
--- /dev/null
+++ b/src/net/sourceforge/plantuml/wire/readme.md
@@ -0,0 +1,10 @@
+# Directory Documentation for `wire`
+
+## Description
+This package provides classes used to manage [PlantUML Wire or Block Diagram](http://alphadoc.plantuml.com/doc/markdown/en/wire-diagram).
+
+## Link
+- [PlantUML Wire or Block Diagram](http://alphadoc.plantuml.com/doc/markdown/en/wire-diagram)
+
+## Reference
+- [Wiring diagram _(on Wikipedia)_](https://en.wikipedia.org/wiki/Wiring_diagram)
diff --git a/src/net/sourceforge/plantuml/xmi/package-info.java b/src/net/sourceforge/plantuml/xmi/package-info.java
new file mode 100644
index 000000000..5867ddc05
--- /dev/null
+++ b/src/net/sourceforge/plantuml/xmi/package-info.java
@@ -0,0 +1,7 @@
+/**
+ * Provides classes used to manage
+ *
+ * XML Metadata Interchange (XMI) output format.
+ *
+ */
+package net.sourceforge.plantuml.xmi;
diff --git a/src/net/sourceforge/plantuml/xmi/readme.md b/src/net/sourceforge/plantuml/xmi/readme.md
new file mode 100644
index 000000000..9217e2271
--- /dev/null
+++ b/src/net/sourceforge/plantuml/xmi/readme.md
@@ -0,0 +1,10 @@
+# Directory Documentation for `xmi`
+
+## Description
+This package provides classes used to export diagram to a [XML Metadata Interchange (XMI)](https://plantuml.com/xmi) output format.
+
+## Link
+- [XML Metadata Interchange (XMI) output format](https://plantuml.com/xmi)
+
+## Reference
+- [XML Metadata Interchange _(on Wikipedia)_](https://en.wikipedia.org/wiki/XML_Metadata_Interchange)
diff --git a/src/net/sourceforge/plantuml/xml/package-info.java b/src/net/sourceforge/plantuml/xml/package-info.java
new file mode 100644
index 000000000..c4db224ee
--- /dev/null
+++ b/src/net/sourceforge/plantuml/xml/package-info.java
@@ -0,0 +1,8 @@
+/**
+ * Provides classes used to manage
+ * XML thread-safe lazy initialization
+ * of expensive factories
+ * with the "initialization-on-demand holder" idiom.
+ *
+ */
+package net.sourceforge.plantuml.xml;
diff --git a/src/net/sourceforge/plantuml/xml/readme.md b/src/net/sourceforge/plantuml/xml/readme.md
new file mode 100644
index 000000000..aa4a9ddc0
--- /dev/null
+++ b/src/net/sourceforge/plantuml/xml/readme.md
@@ -0,0 +1,10 @@
+# Directory Documentation for `xml`
+
+## Description
+This package provides classes used to manage XML thread-safe lazy initialization of expensive factories with the "initialization-on-demand holder" idiom.
+
+## Reference
+- [Initialization-on-demand holder idiom _(on Wikipedia)_](https://en.wikipedia.org/wiki/Initialization-on-demand_holder_idiom)
+
+## Credit or Inspiration
+- [How to implement thread-safe lazy initialization? _(on Stackoverflow)_](https://stackoverflow.com/a/8297830/1848731)
\ No newline at end of file
diff --git a/src/net/sourceforge/plantuml/xmlsc/package-info.java b/src/net/sourceforge/plantuml/xmlsc/package-info.java
new file mode 100644
index 000000000..15a575b7e
--- /dev/null
+++ b/src/net/sourceforge/plantuml/xmlsc/package-info.java
@@ -0,0 +1,7 @@
+/**
+ * Provides classes used to manage
+ *
+ * State Chart XML (SCXML) output format.
+ *
+ */
+package net.sourceforge.plantuml.xmlsc;
diff --git a/src/net/sourceforge/plantuml/xmlsc/readme.md b/src/net/sourceforge/plantuml/xmlsc/readme.md
new file mode 100644
index 000000000..d7a5c235d
--- /dev/null
+++ b/src/net/sourceforge/plantuml/xmlsc/readme.md
@@ -0,0 +1,11 @@
+# Directory Documentation for `xmlsc`
+
+## Description
+This package provides classes used to export diagram to a [State Chart XML (SCXML)](https://plantuml.com/en/command-line#458de91d76a8569c) output format.
+
+## Link
+- [SCXML output format](https://plantuml.com/en/command-line#458de91d76a8569c)
+
+## Reference
+- [SCXML _(on Wikipedia)_](https://en.wikipedia.org/wiki/SCXML)
+- [SCXML _(on W3C)_](https://www.w3.org/TR/scxml/)
diff --git a/src/net/sourceforge/plantuml/yaml/package-info.java b/src/net/sourceforge/plantuml/yaml/package-info.java
new file mode 100644
index 000000000..d13069d1b
--- /dev/null
+++ b/src/net/sourceforge/plantuml/yaml/package-info.java
@@ -0,0 +1,7 @@
+/**
+ * Provides classes used to manage
+ *
+ * YAML Diagram.
+ *
+ */
+package net.sourceforge.plantuml.yaml;
diff --git a/src/net/sourceforge/plantuml/yaml/readme.md b/src/net/sourceforge/plantuml/yaml/readme.md
new file mode 100644
index 000000000..213a3f9f4
--- /dev/null
+++ b/src/net/sourceforge/plantuml/yaml/readme.md
@@ -0,0 +1,15 @@
+# Directory Documentation for `yaml`
+
+## Description
+This package provides classes used to manage [PlantUML YAML Diagram](https://plantuml.com/yaml).
+
+## Link
+- [PlantUML YAML Diagram](https://plantuml.com/yaml)
+
+## Reference
+- [YAML _(on Wikipedia)_](https://en.wikipedia.org/wiki/YAML)
+
+## Credit
+
+## Misc.
+
diff --git a/src/net/sourceforge/plantuml/zopfli/package-info.java b/src/net/sourceforge/plantuml/zopfli/package-info.java
new file mode 100644
index 000000000..ac248aecd
--- /dev/null
+++ b/src/net/sourceforge/plantuml/zopfli/package-info.java
@@ -0,0 +1,18 @@
+/**
+ * Provides classes used to manage
+ *
+ * Zopfli Compression Algorithm.
+ *
+ *
+ * The code is taken from:
+ *
+ *
+ *
+ * @see net.sourceforge.plantuml.brotli
+ * @see net.sourceforge.plantuml.code.deflate
+ *
+ */
+package net.sourceforge.plantuml.zopfli;
diff --git a/src/net/sourceforge/plantuml/zopfli/readme.md b/src/net/sourceforge/plantuml/zopfli/readme.md
new file mode 100644
index 000000000..91fc1986f
--- /dev/null
+++ b/src/net/sourceforge/plantuml/zopfli/readme.md
@@ -0,0 +1,18 @@
+# Directory Documentation for `zopfli`
+
+## Description
+This package provides classes used to manage [CafeUndZopfli Compression Algorithm](https://github.com/eustas/CafeUndZopfli).
+
+## Link
+- :octocat: [Eustas/CafeUndZopfli](https://github.com/eustas/CafeUndZopfli)
+
+## Reference
+- [Zopfli _(on Wikipedia)_](https://en.wikipedia.org/wiki/Zopfli)
+- :octocat: [Google/Zopfli](https://github.com/google/zopfli)
+
+## Credit
+- :octocat: [Eustas/CafeUndZopfli](https://github.com/eustas/CafeUndZopfli)
+
+## Misc.
+- [Zopf _(on Wikipedia)_](https://als.wikipedia.org/wiki/Zopf) _[als]_
+- [Zopf _(on Wikipedia)_](https://en.wikipedia.org/wiki/Zopf) _[en]_