diff --git a/README.md b/README.md
index dc27f0f..3342d32 100644
--- a/README.md
+++ b/README.md
@@ -1,3 +1,6 @@
-# osr-package-template
+# PolyCraft
+
+## References
+
+- [System Design Interview Questions](https://www.javatpoint.com/system-design-interview-questions)
-Package basics
\ No newline at end of file
diff --git a/docs/diagrams/api/index.drawio b/docs/diagrams/api/index.drawio
new file mode 100644
index 0000000..b411877
--- /dev/null
+++ b/docs/diagrams/api/index.drawio
@@ -0,0 +1,136 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/diagrams/api/router.drawio b/docs/diagrams/api/router.drawio
new file mode 100644
index 0000000..d0a0b3a
--- /dev/null
+++ b/docs/diagrams/api/router.drawio
@@ -0,0 +1,40 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/diagrams/bots/index.drawio b/docs/diagrams/bots/index.drawio
new file mode 100644
index 0000000..8c10dba
--- /dev/null
+++ b/docs/diagrams/bots/index.drawio
@@ -0,0 +1,52 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/diagrams/build/system-build-tasks.drawio b/docs/diagrams/build/system-build-tasks.drawio
new file mode 100644
index 0000000..9242f21
--- /dev/null
+++ b/docs/diagrams/build/system-build-tasks.drawio
@@ -0,0 +1 @@
+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
\ No newline at end of file
diff --git a/docs/diagrams/cad-report.json b/docs/diagrams/cad-report.json
new file mode 100644
index 0000000..b0cce1f
--- /dev/null
+++ b/docs/diagrams/cad-report.json
@@ -0,0 +1,92 @@
+[
+ {
+ "code": 0,
+ "command": "draw.io.exe \"C:/Users/mc007/Desktop/osr/system/diagrams/packages - q4.drawio\" -x -f jpg ",
+ "messages": [
+ "\r\n",
+ "C:/Users/mc007/Desktop/osr/system/diagrams/packages - q4.drawio -> C:\\Users\\mc007\\Desktop\\osr\\system\\diagrams\\packages - q4.jpg\n"
+ ],
+ "src": "C:/Users/mc007/Desktop/osr/system/diagrams/packages - q4.drawio",
+ "target": "C:\\Users\\mc007\\Desktop\\osr\\system\\diagrams\\packages - q4.jpg",
+ "failed": false,
+ "options": {
+ "src": "C:/Users/mc007/Desktop/osr/system/diagrams/packages - q4.drawio",
+ "dst": "C:\\Users\\mc007\\Desktop\\osr\\system\\diagrams\\&{SRC_DIR}\\&{SRC_NAME}.+(jpg)",
+ "debug": true,
+ "verbose": true,
+ "dry": false,
+ "skip": false,
+ "hidden": "true",
+ "alt": true,
+ "quality": 2,
+ "script": "convert.exe",
+ "sw": 2022,
+ "configuration": "Default",
+ "report": "${SRC_DIR}/cad-report.json",
+ "variables": {
+ "SRC_PATH": "C:/Users/mc007/Desktop/osr/system/diagrams/packages - q4.drawio",
+ "SRC_DIR": "C:/Users/mc007/Desktop/osr/system/diagrams",
+ "SRC_NAME": "packages - q4",
+ "SRC_FILE_NAME": "packages - q4.drawio",
+ "SRC_FILE_EXT": "drawio",
+ "SRC_IS_FILE": true,
+ "SRC_IS_FOLDER": false,
+ "SRC_IS_EXPRESSION": false,
+ "SRC_IS_GLOB": false,
+ "SRC_FILES": [
+ "C:/Users/mc007/Desktop/osr/system/diagrams/packages - q4.drawio"
+ ],
+ "DST_PATH": "&{SRC_DIR}/&{SRC_NAME}.+(jpg)",
+ "DST_DIR": "C:\\Users\\mc007\\Desktop\\osr\\system\\diagrams",
+ "DST_NAME": "&{SRC_NAME}",
+ "DST_FILE_NAME": "\\&{SRC_DIR}\\&{SRC_NAME}.+(jpg)",
+ "DST_FILE_EXT": "+(jpg)",
+ "DST_IS_FILE": false,
+ "DST_IS_FOLDER": false,
+ "DST_IS_EXPRESSION": false,
+ "DST_IS_GLOB": true,
+ "DST_GLOB": "\\&{SRC_DIR}\\&{SRC_NAME}.+(jpg)",
+ "DST_GLOB_EXTENSIONS": [
+ "jpg"
+ ],
+ "DST_FILES": []
+ },
+ "view": "Render",
+ "args": "",
+ "bom-config": "Default",
+ "bom-detail": 1,
+ "bom-type": 2,
+ "bom-images": false,
+ "srcInfo": {
+ "PATH": "C:/Users/mc007/Desktop/osr/system/diagrams/packages - q4.drawio",
+ "DIR": "C:/Users/mc007/Desktop/osr/system/diagrams",
+ "NAME": "packages - q4",
+ "FILE_NAME": "packages - q4.drawio",
+ "FILE_EXT": "drawio",
+ "IS_FILE": true,
+ "IS_FOLDER": false,
+ "IS_EXPRESSION": false,
+ "IS_GLOB": false,
+ "FILES": [
+ "C:/Users/mc007/Desktop/osr/system/diagrams/packages - q4.drawio"
+ ]
+ },
+ "dstInfo": {
+ "PATH": "&{SRC_DIR}/&{SRC_NAME}.+(jpg)",
+ "DIR": "C:\\Users\\mc007\\Desktop\\osr\\system\\diagrams",
+ "NAME": "&{SRC_NAME}",
+ "FILE_NAME": "\\&{SRC_DIR}\\&{SRC_NAME}.+(jpg)",
+ "FILE_EXT": "+(jpg)",
+ "IS_FILE": false,
+ "IS_FOLDER": false,
+ "IS_EXPRESSION": false,
+ "IS_GLOB": true,
+ "GLOB": "\\&{SRC_DIR}\\&{SRC_NAME}.+(jpg)",
+ "GLOB_EXTENSIONS": [
+ "jpg"
+ ],
+ "FILES": []
+ }
+ }
+ }
+]
\ No newline at end of file
diff --git a/docs/diagrams/cad/packages.drawio b/docs/diagrams/cad/packages.drawio
new file mode 100644
index 0000000..2fc171b
--- /dev/null
+++ b/docs/diagrams/cad/packages.drawio
@@ -0,0 +1,25 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/diagrams/data/formats.drawio b/docs/diagrams/data/formats.drawio
new file mode 100644
index 0000000..9dba2d4
--- /dev/null
+++ b/docs/diagrams/data/formats.drawio
@@ -0,0 +1 @@
+7Vpbd9o4EP41PKYH29iGRweSZnfJZZectnlUsLDVtS2vLAfor1/JlvBFhpICFfT0IYEZjyXNNzfNHHrWOF59JCAN77EPo57Z91c9a9IzTcMyHfbBOeuSMzQEIyDIF0IVY4a+QcHsC26OfJg1BCnGEUVpkznHSQLntMEDhOBlU2yBo+auKQigwpjNQaRyPyOfhkILu1/x7yAKQrmz0RdPYiCFBSMLgY+XNZZ107PGBGNafotXYxhx8CQu5Xu3W55uDkZgQvd5YfRX9unujwc4uv008byX1ZRO6ZVVrvIGolwoLA5L1xIB6DNABIkJDXGAExDdVNxrgvPEh3ybPqMqmSnGKWMajPkVUroW1gU5xYwV0jgST1VVhHYZzskc7ji/dAlAAkh3yAm1uC61DQRQHyGOISVrJkBgBCh6axofCB8KNnLiVY8QsK4JpBglNKut/MQZTECEg+MIXxDBYI5aJmvJ29ZOefalPIGkaqpUrMIN3uES9q/pAYNje0DNCu8H2dUBMsOWrL/w9z/YknwRyxXEZNWg1oI6vXGciwxPd6QhPA0lYz/O/pkq7tR0lmWIKJyloDDWklXqPaPvDRIKVztNIrHrt7CQBXxZVU1DlsKwVjEl5kcPMVMB6s/Z40PPdCK28/UrYd8CulFeI3QDtwmdZemGbnTht4LBnmlneFY1YaCgfj/R7pztuNbvnI4C093zvf4E6FrnBpShlorLCuPhnmEsS82ZxLFh6YD551/u9jbP0Zuvg8wzVKLiyXuYPI61Z5B2qh3Y2jNIX8HKmz1rB8puAWU72oFSL5tPk1vtQDmurQ+op2h97b2iz39/uQmz6+XsjXxbdHQvaq5MfI8P7hiV4ITnRh9kYYGa0YVQK610QKbiU9Pf7lBf8t7Xblb9oYDbaMNYplQhtaOx3IwXty1U5lxloR/oMTutpHqzbJtCQ7ZNY5xQWBz6iv3dYhID3luXYmzXSlIyU8mYYgJjfoY0y/mnjyNMuBMgvhxgp++Z7OB8ppvBOYU050+Bj1KUoTlKAm71CAmpjLkGX4MzUZ7FmJMUxmmxJkrmyEd+Xpw05/8i8Mr259JU7s2pGAQJ4NtE6L8cfKhpkm7tFFkY0qZLZpTgf+G4UGjjvwsURS1WxsKeK2JN7Ip6Lkr9lbktOWAW+YuoiIwQ+T5MlHvDlgSxV0zIF1qu56opw3I7YmYz+D56zjiPGfVh96vvJ6nmhasTCEe9cHXKuQder35seNaaYrjO7uGZY+6UP3h41onMQIfnaPCA0SV4gGtr8AB1ejC586ZHGR8clHadVt51hrqvaq6C1OnmpwdBZ7fG9sO+bujUFlNLxVohWitYjHqpPanKFSdOUK3cPXNVOS75CdOA7ZmyYaoX7zjTxMPSwejcfNpQr2HPj2eAVDv6R/qRUmuMGv6X3+R29wuO1YJ1757X+c5CJ+55DbXedTa9CxTkhAGGk9+t7y/W+rY6EmdwwtaXkdVPv0ofrn5AZ938Dw==
\ No newline at end of file
diff --git a/docs/diagrams/data/processing.drawio b/docs/diagrams/data/processing.drawio
new file mode 100644
index 0000000..66d7881
--- /dev/null
+++ b/docs/diagrams/data/processing.drawio
@@ -0,0 +1,103 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/diagrams/firmware/packages.drawio b/docs/diagrams/firmware/packages.drawio
new file mode 100644
index 0000000..c34e974
--- /dev/null
+++ b/docs/diagrams/firmware/packages.drawio
@@ -0,0 +1,37 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/diagrams/index.drawio b/docs/diagrams/index.drawio
new file mode 100644
index 0000000..bd33a34
--- /dev/null
+++ b/docs/diagrams/index.drawio
@@ -0,0 +1,31 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/diagrams/integration/distros.drawio b/docs/diagrams/integration/distros.drawio
new file mode 100644
index 0000000..b2e9184
--- /dev/null
+++ b/docs/diagrams/integration/distros.drawio
@@ -0,0 +1 @@
+5Zhbk9ogFMc/TR6dSSDR7OPG3bXb6VW722c2YMIsgQyi0X76EiU3w176EKvtgyPnD4TD75xwiQOn2XYmUZ5+FpgwB7h468AbBwDPDcf6r1R2ByX0jJBIik2jRljQX6TqadQ1xWTVaaiEYIrmXTEWnJNYdTQkpSi6zZaCdUfNUUJ6wiJGrK/+pFilZhaB2+gfCE3SamTPNTUZqhobYZUiLIqWBG8dOJVCqEMp204JK+FVXA797l6orR2ThKv3dIg+ftuN0Ccu7ubK2z3O8P3D91Hl3AaxtZmx8VbtKgRSrDkm5VNcB0ZFShVZ5CguawsddK2lKmPa8nRxKbgyUfQCbfe9NI5viFRk25KM1zMiMqLkTjepk8g4aVLInxi7aAJSa2k7GNCIyCRBUj+74aQLBtUfYPO8Hravi7kDxigrefCnVb6f+5hpV6InqUuJsiqPGgPV6Xb21Gu7RR0CG/XJYNRBj3okEceUJxeAr0fPG1vojQeDB3vwpoIvabKWSFHBz44guHqbIDwpwaBH8AfJcoaU3qDOjZ4fvE3P9vYOR29iXzLdkf7d0JWSogdRz1V1SZXNnslUMCG1wgUnJT7K2JGEGE24NmNNkGg92ph19tpUZBTjchhraLrBG2J18I6iYwuPbwnPcDta+Ep47vlKIa4JHczrs8v2Y54BsPC0HRGGS/er9/OMzo5nvbG/xjM8JU/wwolrD/ALUYWQz//v+uGHf3v9qO4Nl3SRqE8YLWrARm24iwTon8qatJ6TxHYw+3ez+ig+0HLlOHFW+xe9Kx6t4tAfblfUZvMpY1/X+iAEb38D
\ No newline at end of file
diff --git a/docs/diagrams/integration/docker-template-min.drawio b/docs/diagrams/integration/docker-template-min.drawio
new file mode 100644
index 0000000..ca8c975
--- /dev/null
+++ b/docs/diagrams/integration/docker-template-min.drawio
@@ -0,0 +1,52 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/diagrams/integration/index.drawio b/docs/diagrams/integration/index.drawio
new file mode 100644
index 0000000..91c747e
--- /dev/null
+++ b/docs/diagrams/integration/index.drawio
@@ -0,0 +1,76 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/diagrams/integration/readme.md b/docs/diagrams/integration/readme.md
new file mode 100644
index 0000000..05ac016
--- /dev/null
+++ b/docs/diagrams/integration/readme.md
@@ -0,0 +1,4 @@
+## Systems - OS
+
+- [Awesome Selfhosted](https://github.com/awesome-selfhosted/awesome-selfhosted)
+
diff --git a/docs/diagrams/modules.drawio b/docs/diagrams/modules.drawio
new file mode 100644
index 0000000..3b570fc
--- /dev/null
+++ b/docs/diagrams/modules.drawio
@@ -0,0 +1,42 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/diagrams/packages - q1.drawio b/docs/diagrams/packages - q1.drawio
new file mode 100644
index 0000000..b3ee5d3
--- /dev/null
+++ b/docs/diagrams/packages - q1.drawio
@@ -0,0 +1,168 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/diagrams/packages - q1.svg b/docs/diagrams/packages - q1.svg
new file mode 100644
index 0000000..fd9aea8
--- /dev/null
+++ b/docs/diagrams/packages - q1.svg
@@ -0,0 +1,2 @@
+
+
\ No newline at end of file
diff --git a/docs/diagrams/packages - q2.drawio b/docs/diagrams/packages - q2.drawio
new file mode 100644
index 0000000..14d4637
--- /dev/null
+++ b/docs/diagrams/packages - q2.drawio
@@ -0,0 +1,189 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/diagrams/packages - q2.svg b/docs/diagrams/packages - q2.svg
new file mode 100644
index 0000000..f6d3742
--- /dev/null
+++ b/docs/diagrams/packages - q2.svg
@@ -0,0 +1,2 @@
+
+
\ No newline at end of file
diff --git a/docs/diagrams/packages - q4.drawio b/docs/diagrams/packages - q4.drawio
new file mode 100644
index 0000000..9df50d4
--- /dev/null
+++ b/docs/diagrams/packages - q4.drawio
@@ -0,0 +1,234 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/diagrams/packages.drawio b/docs/diagrams/packages.drawio
new file mode 100644
index 0000000..4ffab05
--- /dev/null
+++ b/docs/diagrams/packages.drawio
@@ -0,0 +1,133 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/diagrams/product/compile_component_v1.drawio b/docs/diagrams/product/compile_component_v1.drawio
new file mode 100644
index 0000000..063fc5f
--- /dev/null
+++ b/docs/diagrams/product/compile_component_v1.drawio
@@ -0,0 +1 @@
+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
\ No newline at end of file
diff --git a/docs/diagrams/product/compile_component_v2.drawio b/docs/diagrams/product/compile_component_v2.drawio
new file mode 100644
index 0000000..48d4abe
--- /dev/null
+++ b/docs/diagrams/product/compile_component_v2.drawio
@@ -0,0 +1 @@
+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
\ No newline at end of file
diff --git a/docs/diagrams/product/product-pipe-q2.drawio b/docs/diagrams/product/product-pipe-q2.drawio
new file mode 100644
index 0000000..daf0fe7
--- /dev/null
+++ b/docs/diagrams/product/product-pipe-q2.drawio
@@ -0,0 +1,109 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/diagrams/product/product-pipe-q3.drawio b/docs/diagrams/product/product-pipe-q3.drawio
new file mode 100644
index 0000000..ac6c7f7
--- /dev/null
+++ b/docs/diagrams/product/product-pipe-q3.drawio
@@ -0,0 +1,185 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/diagrams/product/product-pipe.drawio b/docs/diagrams/product/product-pipe.drawio
new file mode 100644
index 0000000..5b2c01a
--- /dev/null
+++ b/docs/diagrams/product/product-pipe.drawio
@@ -0,0 +1 @@
+7Vpdk6I4FP01Vu0+aMmn8oiKM71rKw3Ouj0vU1lJAz1AnBD8mF8/0AQFgrbt2NC1JS/CIVziOffm5ia0hKG//YTByrlHFvRafNfatoRRi+cFWRbjnwTZpQgni0KK2Ni1KHYATPcnpGCXopFrwbDQkCDkEXdVBJcoCOCSFDCAMdoUmz0hr/jWFbAhA5hL4LHowrWIQ1FOVg43PkPXduir+3wvvfEfWH63MYoC+r4WL4xfjvS2DzJb9I+GDrDQJgcJWksYYoRIeuZvh9BLyM1oS58bH7m77zeGATnnARStJWNLxr4iqg8TV1Z1Q2lTK2vgRZQPFOK2y/UD2mmyy4jaOC6B5gosk+tN7A0tYeAQ34uvuPiU7U5mG2ICtzmIdu8TRD4keBc3oXfbnCJSsqg3tYUM2OS0yRh1crLIFAPUHey99QMl8Qll5Q0MiQxDM9NoG+riYxAk8zUStP25mIyn/uN01V8AaMnqTGlXuFCLl734rYNwBYICRfKPKPH2wRMKSHtDO6fGTQKEfeAdGsRndvKbOGNIsBvYbbhdOiCIY5kaj/ua2k9bvlWNpAsmbV0RSpdIIyhFacQ6fbdSGqHSd0eaPpk9fgz35aWmOWLjm2EGBpaaZJr4KkBBDA4sEDrQoszkSEpwHRACcZD6VVdI4oBg9H2fXfhTZEKrkK1YKnM8SRU0ZRiGHiDuupjjqrijb9CRG/fkoBQvcCWluF5JgRBFeAnpg/m8U7bFCdJrtgjANiSMrRdB93/+co0lRmNzPjM0s5EY6HfLbFTFAKfUGAMyy4921wQ5Bwc+SU6tA0SPIeduOtL+bcR3ZPnD0dNn6JncJck5xjqdTiMsSfyHY0lhI0xvZ1MZN5vEBLnJjXvpzOYqFDKJunkKs4SU41AHrtU2tVlsz9QMvZkRq+xsYlYAN8dU1ZT8NqfhhPLoKYuXz2lKtqR6ZzQcz0icTO3nmjmP0T/immo8+LOZkaNcBkl1VqjYn9p/j0KiShuPc9zh0xr9OFIGmbo2ZGeAibNmdSHCxEE2CoCnHdDBy5LPS6B0kwp132aC0IoS+QwJ2dGlLhARxAbUPtCOcp66Ygp9MbdGdwW/WKGH/aWha/dPg6zuTh0tbXdqAePVKDw7vM7V4lSvGb+91yfqXHurx55H5W8lvl6vafe9jebnVah8thZ9hQqVsXW98bxSY3Y4v2lcpbFQjrLLMzZr63oaG7vV57717UGZG5M7Z+lrIb+oiOOqGsC9Rg1Qw7hY5+JmJZ23kDkvZHrdTjd38MKlAcQzqbHe+GGncTfBKwQXlY6SO3q9ayXFVwy/s/q3dfrzwl0SuWK8Xy1fxpZrVZxdtb8pXqW4LPavpDizuXza8jvrz+5KnKF/TvL/g7jK1TbdypbeWTx21ySp89WpOnmc31Wsu9S/XV9ydq7OZarn6Ct++NbvPkdSz4ju13/Nd7sjSyP/aNPRzHgrX0f4qGDtxNI2d9ZO5ZU4ii8P30KlXnj44kzQfgE=
\ No newline at end of file
diff --git a/docs/diagrams/product/product.md b/docs/diagrams/product/product.md
new file mode 100644
index 0000000..f84cda4
--- /dev/null
+++ b/docs/diagrams/product/product.md
@@ -0,0 +1,68 @@
+# Product / Component / Project - Page structure
+
+The main structural elements from the old library will remain intact.
+
+
+
+## Tabs
+
+### Overview
+
+**Modules**
+
+- Brief description
+- Short summeray table of key specifications as version, authors, license
+- Attributes
+ - Overall rating
+ - Safety
+ - Completeness
+ - Number of minor and major issues
+ - Status, eg: mature, in development but also active maintainence, abandoned
+ - Author trustworthiness
+- Detailed specification
+ - Certifications, compliance
+- Performance
+- List of alternatives & versions
+- List of community versions
+- List of use cases, success stories and known applications
+- Actions : Download, Preview, build, buy, contribute
+
+### Build
+
+The build tab acts a portal to all manufactoring artefacts. Please see [here](./product.jpg) for more.
+
+**Modules**
+
+- Requirements (with alternatives)
+- Drawings
+- Renderings
+- List of how-tows, as well related information
+- BOM
+ - Overview
+ - Detail
+ - Issues
+ - Location specific versions
+- Difficulties
+- List of related forum posts
+- FAQ
+- Issues
+
+### Resources
+
+- Links to community builds
+- Research data
+- Info and press material
+- Manuals
+- Issues
+- Actions : contribute, report, ...
+- List of open and recent closed issues
+- Reviews
+- Limitations
+
+### Howtos
+
+- build and use related howtows
+
+### Forum
+
+All related forum posts
diff --git a/docs/diagrams/product/product_data.drawio b/docs/diagrams/product/product_data.drawio
new file mode 100644
index 0000000..cf39252
--- /dev/null
+++ b/docs/diagrams/product/product_data.drawio
@@ -0,0 +1,250 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/diagrams/system/infrastructure.drawio b/docs/diagrams/system/infrastructure.drawio
new file mode 100644
index 0000000..9665620
--- /dev/null
+++ b/docs/diagrams/system/infrastructure.drawio
@@ -0,0 +1,73 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/diagrams/system/system-components-v2.drawio b/docs/diagrams/system/system-components-v2.drawio
new file mode 100644
index 0000000..291ba5f
--- /dev/null
+++ b/docs/diagrams/system/system-components-v2.drawio
@@ -0,0 +1 @@
+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
\ No newline at end of file
diff --git a/docs/diagrams/system/system-components.drawio b/docs/diagrams/system/system-components.drawio
new file mode 100644
index 0000000..8595496
--- /dev/null
+++ b/docs/diagrams/system/system-components.drawio
@@ -0,0 +1 @@
+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
\ No newline at end of file
diff --git a/docs/diagrams/system/system-configuration.md b/docs/diagrams/system/system-configuration.md
new file mode 100644
index 0000000..bac712c
--- /dev/null
+++ b/docs/diagrams/system/system-configuration.md
@@ -0,0 +1,24 @@
+# System Configuration
+
+Any render related configurations are stored as JSON and/or YAML files, depending on the context and needs.
+
+The root configaration may contain variables being resolved against command line arguments and environment variables
+
+## The OSR system render configuration
+
+**Examples** : ```templates/site/config.json```
+
+```json
+{
+ "baseUrl":"absolute web url"
+ "env" :{
+ "site":{
+ "baseUrl":"if env=site, override baseUrl with that value"
+ },
+ "print":{
+ "example using environment or CLI variables":"",
+ "baseUrl":"${baseUrl}"
+ }
+ }
+}
+```
diff --git a/docs/diagrams/system/system-design.md b/docs/diagrams/system/system-design.md
new file mode 100644
index 0000000..09c0e96
--- /dev/null
+++ b/docs/diagrams/system/system-design.md
@@ -0,0 +1,21 @@
+# System Design Overview
+
+The OSR platform provides various outlets for the same piece of content, ideally authored in one place and published to different platforms and systems as forums, wiki, CRM, newsletter, campaigns, website but also product specifications PDF.
+
+## Components
+
+### Here the basic packages of the OSR platform
+
+
+
+
+
+
+## Examples
+
+### Compile product description for the shop system
+
+
+
+
+
diff --git a/docs/diagrams/system/system-modules.drawio b/docs/diagrams/system/system-modules.drawio
new file mode 100644
index 0000000..8419e84
--- /dev/null
+++ b/docs/diagrams/system/system-modules.drawio
@@ -0,0 +1,49 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/diagrams/system/systems.drawio b/docs/diagrams/system/systems.drawio
new file mode 100644
index 0000000..225d7cc
--- /dev/null
+++ b/docs/diagrams/system/systems.drawio
@@ -0,0 +1,85 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/diagrams/vendor/alibaba.drawio b/docs/diagrams/vendor/alibaba.drawio
new file mode 100644
index 0000000..b1a6c4a
--- /dev/null
+++ b/docs/diagrams/vendor/alibaba.drawio
@@ -0,0 +1,91 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/diagrams/vendor/index.drawio b/docs/diagrams/vendor/index.drawio
new file mode 100644
index 0000000..0f9e490
--- /dev/null
+++ b/docs/diagrams/vendor/index.drawio
@@ -0,0 +1,31 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/diagrams/vendor/packages.drawio b/docs/diagrams/vendor/packages.drawio
new file mode 100644
index 0000000..d94e93e
--- /dev/null
+++ b/docs/diagrams/vendor/packages.drawio
@@ -0,0 +1,43 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+