diff --git a/.gitignore b/.gitignore index 8fca0b41a..738e7de3e 100644 --- a/.gitignore +++ b/.gitignore @@ -61,3 +61,6 @@ pleroma.iml # Editor temp files /*~ /*# + +# Generated documentation +docs/site diff --git a/Makefile b/Makefile new file mode 100644 index 000000000..bc8719e68 --- /dev/null +++ b/Makefile @@ -0,0 +1,7 @@ +all: install + pipenv run mkdocs build + +install: + pipenv install +clean: + rm -rf docs diff --git a/docs/Pipfile b/docs/Pipfile new file mode 100644 index 000000000..3e538a540 --- /dev/null +++ b/docs/Pipfile @@ -0,0 +1,10 @@ +[[source]] +name = "pypi" +url = "https://pypi.org/simple" +verify_ssl = true + +[dev-packages] + +[packages] +mkdocs-material = "*" +markdown-include = "*" diff --git a/docs/Pipfile.lock b/docs/Pipfile.lock new file mode 100644 index 000000000..ae39a2776 --- /dev/null +++ b/docs/Pipfile.lock @@ -0,0 +1,277 @@ +{ + "_meta": { + "hash": { + "sha256": "926d34630c729228bb015cb958c04f8269c57f5ca1ffc2ceab1dfd1798884772" + }, + "pipfile-spec": 6, + "requires": {}, + "sources": [ + { + "name": "pypi", + "url": "https://pypi.org/simple", + "verify_ssl": true + } + ] + }, + "default": { + "click": { + "hashes": [ + "sha256:7682dc8afb30297001674575ea00d1814d808d6a36af415a82bd481d37ba7b8e", + "sha256:bb4d8133cb15a609f44e8213d9b391b0809795062913b383c62be0ee95b1db48" + ], + "markers": "python_version >= '3.7'", + "version": "==8.1.3" + }, + "ghp-import": { + "hashes": [ + "sha256:8337dd7b50877f163d4c0289bc1f1c7f127550241988d568c1db512c4324a619", + "sha256:9c535c4c61193c2df8871222567d7fd7e5014d835f97dc7b7439069e2413d343" + ], + "version": "==2.1.0" + }, + "importlib-metadata": { + "hashes": [ + "sha256:637245b8bab2b6502fcbc752cc4b7a6f6243bb02b31c5c26156ad103d3d45670", + "sha256:7401a975809ea1fdc658c3aa4f78cc2195a0e019c5cbc4c06122884e9ae80c23" + ], + "markers": "python_version >= '3.7'", + "version": "==4.12.0" + }, + "jinja2": { + "hashes": [ + "sha256:31351a702a408a9e7595a8fc6150fc3f43bb6bf7e319770cbc0db9df9437e852", + "sha256:6088930bfe239f0e6710546ab9c19c9ef35e29792895fed6e6e31a023a182a61" + ], + "markers": "python_version >= '3.7'", + "version": "==3.1.2" + }, + "markdown": { + "hashes": [ + "sha256:cbb516f16218e643d8e0a95b309f77eb118cb138d39a4f27851e6a63581db874", + "sha256:f5da449a6e1c989a4cea2631aa8ee67caa5a2ef855d551c88f9e309f4634c621" + ], + "markers": "python_version >= '3.6'", + "version": "==3.3.7" + }, + "markdown-include": { + "hashes": [ + "sha256:6f5d680e36f7780c7f0f61dca53ca581bd50d1b56137ddcd6353efafa0c3e4a2" + ], + "index": "pypi", + "version": "==0.6.0" + }, + "markupsafe": { + "hashes": [ + "sha256:0212a68688482dc52b2d45013df70d169f542b7394fc744c02a57374a4207003", + "sha256:089cf3dbf0cd6c100f02945abeb18484bd1ee57a079aefd52cffd17fba910b88", + "sha256:10c1bfff05d95783da83491be968e8fe789263689c02724e0c691933c52994f5", + "sha256:33b74d289bd2f5e527beadcaa3f401e0df0a89927c1559c8566c066fa4248ab7", + "sha256:3799351e2336dc91ea70b034983ee71cf2f9533cdff7c14c90ea126bfd95d65a", + "sha256:3ce11ee3f23f79dbd06fb3d63e2f6af7b12db1d46932fe7bd8afa259a5996603", + "sha256:421be9fbf0ffe9ffd7a378aafebbf6f4602d564d34be190fc19a193232fd12b1", + "sha256:43093fb83d8343aac0b1baa75516da6092f58f41200907ef92448ecab8825135", + "sha256:46d00d6cfecdde84d40e572d63735ef81423ad31184100411e6e3388d405e247", + "sha256:4a33dea2b688b3190ee12bd7cfa29d39c9ed176bda40bfa11099a3ce5d3a7ac6", + "sha256:4b9fe39a2ccc108a4accc2676e77da025ce383c108593d65cc909add5c3bd601", + "sha256:56442863ed2b06d19c37f94d999035e15ee982988920e12a5b4ba29b62ad1f77", + "sha256:671cd1187ed5e62818414afe79ed29da836dde67166a9fac6d435873c44fdd02", + "sha256:694deca8d702d5db21ec83983ce0bb4b26a578e71fbdbd4fdcd387daa90e4d5e", + "sha256:6a074d34ee7a5ce3effbc526b7083ec9731bb3cbf921bbe1d3005d4d2bdb3a63", + "sha256:6d0072fea50feec76a4c418096652f2c3238eaa014b2f94aeb1d56a66b41403f", + "sha256:6fbf47b5d3728c6aea2abb0589b5d30459e369baa772e0f37a0320185e87c980", + "sha256:7f91197cc9e48f989d12e4e6fbc46495c446636dfc81b9ccf50bb0ec74b91d4b", + "sha256:86b1f75c4e7c2ac2ccdaec2b9022845dbb81880ca318bb7a0a01fbf7813e3812", + "sha256:8dc1c72a69aa7e082593c4a203dcf94ddb74bb5c8a731e4e1eb68d031e8498ff", + "sha256:8e3dcf21f367459434c18e71b2a9532d96547aef8a871872a5bd69a715c15f96", + "sha256:8e576a51ad59e4bfaac456023a78f6b5e6e7651dcd383bcc3e18d06f9b55d6d1", + "sha256:96e37a3dc86e80bf81758c152fe66dbf60ed5eca3d26305edf01892257049925", + "sha256:97a68e6ada378df82bc9f16b800ab77cbf4b2fada0081794318520138c088e4a", + "sha256:99a2a507ed3ac881b975a2976d59f38c19386d128e7a9a18b7df6fff1fd4c1d6", + "sha256:a49907dd8420c5685cfa064a1335b6754b74541bbb3706c259c02ed65b644b3e", + "sha256:b09bf97215625a311f669476f44b8b318b075847b49316d3e28c08e41a7a573f", + "sha256:b7bd98b796e2b6553da7225aeb61f447f80a1ca64f41d83612e6139ca5213aa4", + "sha256:b87db4360013327109564f0e591bd2a3b318547bcef31b468a92ee504d07ae4f", + "sha256:bcb3ed405ed3222f9904899563d6fc492ff75cce56cba05e32eff40e6acbeaa3", + "sha256:d4306c36ca495956b6d568d276ac11fdd9c30a36f1b6eb928070dc5360b22e1c", + "sha256:d5ee4f386140395a2c818d149221149c54849dfcfcb9f1debfe07a8b8bd63f9a", + "sha256:dda30ba7e87fbbb7eab1ec9f58678558fd9a6b8b853530e176eabd064da81417", + "sha256:e04e26803c9c3851c931eac40c695602c6295b8d432cbe78609649ad9bd2da8a", + "sha256:e1c0b87e09fa55a220f058d1d49d3fb8df88fbfab58558f1198e08c1e1de842a", + "sha256:e72591e9ecd94d7feb70c1cbd7be7b3ebea3f548870aa91e2732960fa4d57a37", + "sha256:e8c843bbcda3a2f1e3c2ab25913c80a3c5376cd00c6e8c4a86a89a28c8dc5452", + "sha256:efc1913fd2ca4f334418481c7e595c00aad186563bbc1ec76067848c7ca0a933", + "sha256:f121a1420d4e173a5d96e47e9a0c0dcff965afdf1626d28de1460815f7c4ee7a", + "sha256:fc7b548b17d238737688817ab67deebb30e8073c95749d55538ed473130ec0c7" + ], + "markers": "python_version >= '3.7'", + "version": "==2.1.1" + }, + "mergedeep": { + "hashes": [ + "sha256:0096d52e9dad9939c3d975a774666af186eda617e6ca84df4c94dec30004f2a8", + "sha256:70775750742b25c0d8f36c55aed03d24c3384d17c951b3175d898bd778ef0307" + ], + "markers": "python_version >= '3.6'", + "version": "==1.3.4" + }, + "mkdocs": { + "hashes": [ + "sha256:26bd2b03d739ac57a3e6eed0b7bcc86168703b719c27b99ad6ca91dc439aacde", + "sha256:b504405b04da38795fec9b2e5e28f6aa3a73bb0960cb6d5d27ead28952bd35ea" + ], + "markers": "python_version >= '3.6'", + "version": "==1.3.0" + }, + "mkdocs-material": { + "hashes": [ + "sha256:263f2721f3abe533b61f7c8bed435a0462620912742c919821ac2d698b4bfe67", + "sha256:dc82b667d2a83f0de581b46a6d0949732ab77e7638b87ea35b770b33bc02e75a" + ], + "index": "pypi", + "version": "==8.3.9" + }, + "mkdocs-material-extensions": { + "hashes": [ + "sha256:a82b70e533ce060b2a5d9eb2bc2e1be201cf61f901f93704b4acf6e3d5983a44", + "sha256:bfd24dfdef7b41c312ede42648f9eb83476ea168ec163b613f9abd12bbfddba2" + ], + "markers": "python_version >= '3.6'", + "version": "==1.0.3" + }, + "packaging": { + "hashes": [ + "sha256:dd47c42927d89ab911e606518907cc2d3a1f38bbd026385970643f9c5b8ecfeb", + "sha256:ef103e05f519cdc783ae24ea4e2e0f508a9c99b2d4969652eed6a2e1ea5bd522" + ], + "markers": "python_version >= '3.6'", + "version": "==21.3" + }, + "pygments": { + "hashes": [ + "sha256:5eb116118f9612ff1ee89ac96437bb6b49e8f04d8a13b514ba26f620208e26eb", + "sha256:dc9c10fb40944260f6ed4c688ece0cd2048414940f1cea51b8b226318411c519" + ], + "markers": "python_version >= '3.6'", + "version": "==2.12.0" + }, + "pymdown-extensions": { + "hashes": [ + "sha256:3ef2d998c0d5fa7eb09291926d90d69391283561cf6306f85cd588a5eb5befa0", + "sha256:ec141c0f4983755349f0c8710416348d1a13753976c028186ed14f190c8061c4" + ], + "markers": "python_version >= '3.7'", + "version": "==9.5" + }, + "pyparsing": { + "hashes": [ + "sha256:2b020ecf7d21b687f219b71ecad3631f644a47f01403fa1d1036b0c6416d70fb", + "sha256:5026bae9a10eeaefb61dab2f09052b9f4307d44aee4eda64b309723d8d206bbc" + ], + "markers": "python_full_version >= '3.6.8'", + "version": "==3.0.9" + }, + "python-dateutil": { + "hashes": [ + "sha256:0123cacc1627ae19ddf3c27a5de5bd67ee4586fbdd6440d9748f8abb483d3e86", + "sha256:961d03dc3453ebbc59dbdea9e4e11c5651520a876d0f4db161e8674aae935da9" + ], + "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'", + "version": "==2.8.2" + }, + "pyyaml": { + "hashes": [ + "sha256:0283c35a6a9fbf047493e3a0ce8d79ef5030852c51e9d911a27badfde0605293", + "sha256:055d937d65826939cb044fc8c9b08889e8c743fdc6a32b33e2390f66013e449b", + "sha256:07751360502caac1c067a8132d150cf3d61339af5691fe9e87803040dbc5db57", + "sha256:0b4624f379dab24d3725ffde76559cff63d9ec94e1736b556dacdfebe5ab6d4b", + "sha256:0ce82d761c532fe4ec3f87fc45688bdd3a4c1dc5e0b4a19814b9009a29baefd4", + "sha256:1e4747bc279b4f613a09eb64bba2ba602d8a6664c6ce6396a4d0cd413a50ce07", + "sha256:213c60cd50106436cc818accf5baa1aba61c0189ff610f64f4a3e8c6726218ba", + "sha256:231710d57adfd809ef5d34183b8ed1eeae3f76459c18fb4a0b373ad56bedcdd9", + "sha256:277a0ef2981ca40581a47093e9e2d13b3f1fbbeffae064c1d21bfceba2030287", + "sha256:2cd5df3de48857ed0544b34e2d40e9fac445930039f3cfe4bcc592a1f836d513", + "sha256:40527857252b61eacd1d9af500c3337ba8deb8fc298940291486c465c8b46ec0", + "sha256:473f9edb243cb1935ab5a084eb238d842fb8f404ed2193a915d1784b5a6b5fc0", + "sha256:48c346915c114f5fdb3ead70312bd042a953a8ce5c7106d5bfb1a5254e47da92", + "sha256:50602afada6d6cbfad699b0c7bb50d5ccffa7e46a3d738092afddc1f9758427f", + "sha256:68fb519c14306fec9720a2a5b45bc9f0c8d1b9c72adf45c37baedfcd949c35a2", + "sha256:77f396e6ef4c73fdc33a9157446466f1cff553d979bd00ecb64385760c6babdc", + "sha256:819b3830a1543db06c4d4b865e70ded25be52a2e0631ccd2f6a47a2822f2fd7c", + "sha256:897b80890765f037df3403d22bab41627ca8811ae55e9a722fd0392850ec4d86", + "sha256:98c4d36e99714e55cfbaaee6dd5badbc9a1ec339ebfc3b1f52e293aee6bb71a4", + "sha256:9df7ed3b3d2e0ecfe09e14741b857df43adb5a3ddadc919a2d94fbdf78fea53c", + "sha256:9fa600030013c4de8165339db93d182b9431076eb98eb40ee068700c9c813e34", + "sha256:a80a78046a72361de73f8f395f1f1e49f956c6be882eed58505a15f3e430962b", + "sha256:b3d267842bf12586ba6c734f89d1f5b871df0273157918b0ccefa29deb05c21c", + "sha256:b5b9eccad747aabaaffbc6064800670f0c297e52c12754eb1d976c57e4f74dcb", + "sha256:c5687b8d43cf58545ade1fe3e055f70eac7a5a1a0bf42824308d868289a95737", + "sha256:cba8c411ef271aa037d7357a2bc8f9ee8b58b9965831d9e51baf703280dc73d3", + "sha256:d15a181d1ecd0d4270dc32edb46f7cb7733c7c508857278d3d378d14d606db2d", + "sha256:d4db7c7aef085872ef65a8fd7d6d09a14ae91f691dec3e87ee5ee0539d516f53", + "sha256:d4eccecf9adf6fbcc6861a38015c2a64f38b9d94838ac1810a9023a0609e1b78", + "sha256:d67d839ede4ed1b28a4e8909735fc992a923cdb84e618544973d7dfc71540803", + "sha256:daf496c58a8c52083df09b80c860005194014c3698698d1a57cbcfa182142a3a", + "sha256:e61ceaab6f49fb8bdfaa0f92c4b57bcfbea54c09277b1b4f7ac376bfb7a7c174", + "sha256:f84fbc98b019fef2ee9a1cb3ce93e3187a6df0b2538a651bfb890254ba9f90b5" + ], + "markers": "python_version >= '3.6'", + "version": "==6.0" + }, + "pyyaml-env-tag": { + "hashes": [ + "sha256:70092675bda14fdec33b31ba77e7543de9ddc88f2e5b99160396572d11525bdb", + "sha256:af31106dec8a4d68c60207c1886031cbf839b68aa7abccdb19868200532c2069" + ], + "markers": "python_version >= '3.6'", + "version": "==0.1" + }, + "six": { + "hashes": [ + "sha256:1e61c37477a1626458e36f7b1d82aa5c9b094fa4802892072e49de9c60c4c926", + "sha256:8abb2f1d86890a2dfb989f9a77cfcfd3e47c2a354b01111771326f8aa26e0254" + ], + "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'", + "version": "==1.16.0" + }, + "watchdog": { + "hashes": [ + "sha256:083171652584e1b8829581f965b9b7723ca5f9a2cd7e20271edf264cfd7c1412", + "sha256:117ffc6ec261639a0209a3252546b12800670d4bf5f84fbd355957a0595fe654", + "sha256:186f6c55abc5e03872ae14c2f294a153ec7292f807af99f57611acc8caa75306", + "sha256:195fc70c6e41237362ba720e9aaf394f8178bfc7fa68207f112d108edef1af33", + "sha256:226b3c6c468ce72051a4c15a4cc2ef317c32590d82ba0b330403cafd98a62cfd", + "sha256:247dcf1df956daa24828bfea5a138d0e7a7c98b1a47cf1fa5b0c3c16241fcbb7", + "sha256:255bb5758f7e89b1a13c05a5bceccec2219f8995a3a4c4d6968fe1de6a3b2892", + "sha256:43ce20ebb36a51f21fa376f76d1d4692452b2527ccd601950d69ed36b9e21609", + "sha256:4f4e1c4aa54fb86316a62a87b3378c025e228178d55481d30d857c6c438897d6", + "sha256:5952135968519e2447a01875a6f5fc8c03190b24d14ee52b0f4b1682259520b1", + "sha256:64a27aed691408a6abd83394b38503e8176f69031ca25d64131d8d640a307591", + "sha256:6b17d302850c8d412784d9246cfe8d7e3af6bcd45f958abb2d08a6f8bedf695d", + "sha256:70af927aa1613ded6a68089a9262a009fbdf819f46d09c1a908d4b36e1ba2b2d", + "sha256:7a833211f49143c3d336729b0020ffd1274078e94b0ae42e22f596999f50279c", + "sha256:8250546a98388cbc00c3ee3cc5cf96799b5a595270dfcfa855491a64b86ef8c3", + "sha256:97f9752208f5154e9e7b76acc8c4f5a58801b338de2af14e7e181ee3b28a5d39", + "sha256:9f05a5f7c12452f6a27203f76779ae3f46fa30f1dd833037ea8cbc2887c60213", + "sha256:a735a990a1095f75ca4f36ea2ef2752c99e6ee997c46b0de507ba40a09bf7330", + "sha256:ad576a565260d8f99d97f2e64b0f97a48228317095908568a9d5c786c829d428", + "sha256:b530ae007a5f5d50b7fbba96634c7ee21abec70dc3e7f0233339c81943848dc1", + "sha256:bfc4d351e6348d6ec51df007432e6fe80adb53fd41183716017026af03427846", + "sha256:d3dda00aca282b26194bdd0adec21e4c21e916956d972369359ba63ade616153", + "sha256:d9820fe47c20c13e3c9dd544d3706a2a26c02b2b43c993b62fcd8011bcc0adb3", + "sha256:ed80a1628cee19f5cfc6bb74e173f1b4189eb532e705e2a13e3250312a62e0c9", + "sha256:ee3e38a6cc050a8830089f79cbec8a3878ec2fe5160cdb2dc8ccb6def8552658" + ], + "markers": "python_version >= '3.6'", + "version": "==2.1.9" + }, + "zipp": { + "hashes": [ + "sha256:56bf8aadb83c24db6c4b577e13de374ccfb67da2078beba1d037c17980bf43ad", + "sha256:c4f6e5bbf48e74f7a38e7cc5b0480ff42b0ae5178957d564d18932525d5cf099" + ], + "markers": "python_version >= '3.7'", + "version": "==3.8.0" + } + }, + "develop": {} +} diff --git a/docs/README.md b/docs/README.md new file mode 100644 index 000000000..cd4718fe9 --- /dev/null +++ b/docs/README.md @@ -0,0 +1,51 @@ +# Pleroma documentation + +This project contains a documentation skeleton and a script to fill it in with data, the resulting documentation can be viewed at . + +## Contributing to the documentation + +If you want to suggest an edit, please refer to the `AkkomaGang/akkoma` and `AkkomaGang/pleroma-fe` repos. + +We use [mkdocs](https://www.mkdocs.org/) to build the documentation and have the [admonition](https://squidfunk.github.io/mkdocs-material/extensions/admonition/) extensions that make it possible to add block-styled side content like example summaries, notes, hints or warnings. If you are unsure of how a specific syntax should look like, feel free to look through the docs for an example. + +## Building the docs + +You don't need to build and test the docs as long as you make sure the syntax is correct. But in case you do want to build the docs, feel free to do so. + +You'll need to install mkdocs for which you can check the [mkdocs installation guide](https://www.mkdocs.org/#installation). Generally it's best to install it using `pip`. You'll also need to install the correct dependencies. + +To build the docs you can clone this project and use the `manage.sh` script. + +### Example using a Debian based distro + +#### 1. Install pipenv and dependencies + +```shell +pip install pipenv +pipenv sync +``` + +#### 2. (Optional) Activate the virtual environment + +Since dependencies are installed in a virtual environment, you can't use them directly. To use them you should either prefix the command with `pipenv run`, or activate the virtual environment for current shell by executing `pipenv shell` once. + +#### 3. Build the docs using the script + +```shell +git clone https://git.pleroma.social/pleroma/docs +cd docs +[pipenv run] ./manage.sh all +``` + +`./manage.sh all` will fetch the docs from the pleroma and pleroma-fe repos and build the documentation locally. To see what other options you have, do `./manage.sh --help`. + +#### 4. Serve the files + +A folder `site` containing the static html pages will have been created. You can serve them from a server by pointing your server software (nginx, apache...) to this location. During development, you can run locally with + +```shell +[pipenv run] mkdocs serve +``` + +This handles setting up an http server and rebuilding when files change. You can then access the docs on + diff --git a/docs/administration/CLI_tasks/config.md b/docs/docs/administration/CLI_tasks/config.md similarity index 100% rename from docs/administration/CLI_tasks/config.md rename to docs/docs/administration/CLI_tasks/config.md diff --git a/docs/administration/CLI_tasks/database.md b/docs/docs/administration/CLI_tasks/database.md similarity index 100% rename from docs/administration/CLI_tasks/database.md rename to docs/docs/administration/CLI_tasks/database.md diff --git a/docs/administration/CLI_tasks/digest.md b/docs/docs/administration/CLI_tasks/digest.md similarity index 100% rename from docs/administration/CLI_tasks/digest.md rename to docs/docs/administration/CLI_tasks/digest.md diff --git a/docs/administration/CLI_tasks/email.md b/docs/docs/administration/CLI_tasks/email.md similarity index 100% rename from docs/administration/CLI_tasks/email.md rename to docs/docs/administration/CLI_tasks/email.md diff --git a/docs/administration/CLI_tasks/emoji.md b/docs/docs/administration/CLI_tasks/emoji.md similarity index 100% rename from docs/administration/CLI_tasks/emoji.md rename to docs/docs/administration/CLI_tasks/emoji.md diff --git a/docs/administration/CLI_tasks/frontend.md b/docs/docs/administration/CLI_tasks/frontend.md similarity index 100% rename from docs/administration/CLI_tasks/frontend.md rename to docs/docs/administration/CLI_tasks/frontend.md diff --git a/docs/administration/CLI_tasks/general_cli_task_info.include b/docs/docs/administration/CLI_tasks/general_cli_task_info.include similarity index 100% rename from docs/administration/CLI_tasks/general_cli_task_info.include rename to docs/docs/administration/CLI_tasks/general_cli_task_info.include diff --git a/docs/administration/CLI_tasks/instance.md b/docs/docs/administration/CLI_tasks/instance.md similarity index 100% rename from docs/administration/CLI_tasks/instance.md rename to docs/docs/administration/CLI_tasks/instance.md diff --git a/docs/administration/CLI_tasks/oauth_app.md b/docs/docs/administration/CLI_tasks/oauth_app.md similarity index 100% rename from docs/administration/CLI_tasks/oauth_app.md rename to docs/docs/administration/CLI_tasks/oauth_app.md diff --git a/docs/administration/CLI_tasks/relay.md b/docs/docs/administration/CLI_tasks/relay.md similarity index 100% rename from docs/administration/CLI_tasks/relay.md rename to docs/docs/administration/CLI_tasks/relay.md diff --git a/docs/administration/CLI_tasks/robots_txt.md b/docs/docs/administration/CLI_tasks/robots_txt.md similarity index 100% rename from docs/administration/CLI_tasks/robots_txt.md rename to docs/docs/administration/CLI_tasks/robots_txt.md diff --git a/docs/administration/CLI_tasks/uploads.md b/docs/docs/administration/CLI_tasks/uploads.md similarity index 100% rename from docs/administration/CLI_tasks/uploads.md rename to docs/docs/administration/CLI_tasks/uploads.md diff --git a/docs/administration/CLI_tasks/user.md b/docs/docs/administration/CLI_tasks/user.md similarity index 100% rename from docs/administration/CLI_tasks/user.md rename to docs/docs/administration/CLI_tasks/user.md diff --git a/docs/administration/backup.md b/docs/docs/administration/backup.md similarity index 100% rename from docs/administration/backup.md rename to docs/docs/administration/backup.md diff --git a/docs/administration/updating.md b/docs/docs/administration/updating.md similarity index 100% rename from docs/administration/updating.md rename to docs/docs/administration/updating.md diff --git a/docs/clients.md b/docs/docs/clients.md similarity index 100% rename from docs/clients.md rename to docs/docs/clients.md diff --git a/docs/configuration/auth.md b/docs/docs/configuration/auth.md similarity index 100% rename from docs/configuration/auth.md rename to docs/docs/configuration/auth.md diff --git a/docs/configuration/cheatsheet.md b/docs/docs/configuration/cheatsheet.md similarity index 100% rename from docs/configuration/cheatsheet.md rename to docs/docs/configuration/cheatsheet.md diff --git a/docs/configuration/custom_emoji.md b/docs/docs/configuration/custom_emoji.md similarity index 100% rename from docs/configuration/custom_emoji.md rename to docs/docs/configuration/custom_emoji.md diff --git a/docs/configuration/frontend_management.md b/docs/docs/configuration/frontend_management.md similarity index 100% rename from docs/configuration/frontend_management.md rename to docs/docs/configuration/frontend_management.md diff --git a/docs/configuration/hardening.md b/docs/docs/configuration/hardening.md similarity index 100% rename from docs/configuration/hardening.md rename to docs/docs/configuration/hardening.md diff --git a/docs/configuration/howto_database_config.md b/docs/docs/configuration/howto_database_config.md similarity index 100% rename from docs/configuration/howto_database_config.md rename to docs/docs/configuration/howto_database_config.md diff --git a/docs/configuration/howto_ejabberd.md b/docs/docs/configuration/howto_ejabberd.md similarity index 100% rename from docs/configuration/howto_ejabberd.md rename to docs/docs/configuration/howto_ejabberd.md diff --git a/docs/configuration/howto_mediaproxy.md b/docs/docs/configuration/howto_mediaproxy.md similarity index 100% rename from docs/configuration/howto_mediaproxy.md rename to docs/docs/configuration/howto_mediaproxy.md diff --git a/docs/configuration/howto_mongooseim.md b/docs/docs/configuration/howto_mongooseim.md similarity index 100% rename from docs/configuration/howto_mongooseim.md rename to docs/docs/configuration/howto_mongooseim.md diff --git a/docs/configuration/howto_proxy.md b/docs/docs/configuration/howto_proxy.md similarity index 100% rename from docs/configuration/howto_proxy.md rename to docs/docs/configuration/howto_proxy.md diff --git a/docs/configuration/howto_search_cjk.md b/docs/docs/configuration/howto_search_cjk.md similarity index 100% rename from docs/configuration/howto_search_cjk.md rename to docs/docs/configuration/howto_search_cjk.md diff --git a/docs/configuration/howto_set_richmedia_cache_ttl_based_on_image.md b/docs/docs/configuration/howto_set_richmedia_cache_ttl_based_on_image.md similarity index 100% rename from docs/configuration/howto_set_richmedia_cache_ttl_based_on_image.md rename to docs/docs/configuration/howto_set_richmedia_cache_ttl_based_on_image.md diff --git a/docs/configuration/howto_theming_your_instance.md b/docs/docs/configuration/howto_theming_your_instance.md similarity index 100% rename from docs/configuration/howto_theming_your_instance.md rename to docs/docs/configuration/howto_theming_your_instance.md diff --git a/docs/configuration/i2p.md b/docs/docs/configuration/i2p.md similarity index 100% rename from docs/configuration/i2p.md rename to docs/docs/configuration/i2p.md diff --git a/docs/configuration/mrf.md b/docs/docs/configuration/mrf.md similarity index 100% rename from docs/configuration/mrf.md rename to docs/docs/configuration/mrf.md diff --git a/docs/configuration/onion_federation.md b/docs/docs/configuration/onion_federation.md similarity index 100% rename from docs/configuration/onion_federation.md rename to docs/docs/configuration/onion_federation.md diff --git a/docs/configuration/optimizing_beam.md b/docs/docs/configuration/optimizing_beam.md similarity index 100% rename from docs/configuration/optimizing_beam.md rename to docs/docs/configuration/optimizing_beam.md diff --git a/docs/configuration/postgresql.md b/docs/docs/configuration/postgresql.md similarity index 100% rename from docs/configuration/postgresql.md rename to docs/docs/configuration/postgresql.md diff --git a/docs/configuration/search.md b/docs/docs/configuration/search.md similarity index 100% rename from docs/configuration/search.md rename to docs/docs/configuration/search.md diff --git a/docs/configuration/static_dir.md b/docs/docs/configuration/static_dir.md similarity index 100% rename from docs/configuration/static_dir.md rename to docs/docs/configuration/static_dir.md diff --git a/docs/configuration/storing_remote_media.md b/docs/docs/configuration/storing_remote_media.md similarity index 100% rename from docs/configuration/storing_remote_media.md rename to docs/docs/configuration/storing_remote_media.md diff --git a/docs/development/API/admin_api.md b/docs/docs/development/API/admin_api.md similarity index 100% rename from docs/development/API/admin_api.md rename to docs/docs/development/API/admin_api.md diff --git a/docs/development/API/chats.md b/docs/docs/development/API/chats.md similarity index 100% rename from docs/development/API/chats.md rename to docs/docs/development/API/chats.md diff --git a/docs/development/API/differences_in_mastoapi_responses.md b/docs/docs/development/API/differences_in_mastoapi_responses.md similarity index 100% rename from docs/development/API/differences_in_mastoapi_responses.md rename to docs/docs/development/API/differences_in_mastoapi_responses.md diff --git a/docs/development/API/nodeinfo.md b/docs/docs/development/API/nodeinfo.md similarity index 100% rename from docs/development/API/nodeinfo.md rename to docs/docs/development/API/nodeinfo.md diff --git a/docs/development/API/pleroma_api.md b/docs/docs/development/API/pleroma_api.md similarity index 100% rename from docs/development/API/pleroma_api.md rename to docs/docs/development/API/pleroma_api.md diff --git a/docs/development/API/prometheus.md b/docs/docs/development/API/prometheus.md similarity index 100% rename from docs/development/API/prometheus.md rename to docs/docs/development/API/prometheus.md diff --git a/docs/development/ap_extensions.md b/docs/docs/development/ap_extensions.md similarity index 100% rename from docs/development/ap_extensions.md rename to docs/docs/development/ap_extensions.md diff --git a/docs/development/authentication_authorization.md b/docs/docs/development/authentication_authorization.md similarity index 100% rename from docs/development/authentication_authorization.md rename to docs/docs/development/authentication_authorization.md diff --git a/docs/development/index.md b/docs/docs/development/index.md similarity index 100% rename from docs/development/index.md rename to docs/docs/development/index.md diff --git a/docs/development/setting_up_akkoma_dev.md b/docs/docs/development/setting_up_akkoma_dev.md similarity index 100% rename from docs/development/setting_up_akkoma_dev.md rename to docs/docs/development/setting_up_akkoma_dev.md diff --git a/docs/index.md b/docs/docs/index.md similarity index 100% rename from docs/index.md rename to docs/docs/index.md diff --git a/docs/installation/alpine_linux_en.md b/docs/docs/installation/alpine_linux_en.md similarity index 100% rename from docs/installation/alpine_linux_en.md rename to docs/docs/installation/alpine_linux_en.md diff --git a/docs/installation/arch_linux_en.md b/docs/docs/installation/arch_linux_en.md similarity index 100% rename from docs/installation/arch_linux_en.md rename to docs/docs/installation/arch_linux_en.md diff --git a/docs/installation/debian_based_en.md b/docs/docs/installation/debian_based_en.md similarity index 100% rename from docs/installation/debian_based_en.md rename to docs/docs/installation/debian_based_en.md diff --git a/docs/installation/debian_based_jp.md b/docs/docs/installation/debian_based_jp.md similarity index 100% rename from docs/installation/debian_based_jp.md rename to docs/docs/installation/debian_based_jp.md diff --git a/docs/installation/freebsd_en.md b/docs/docs/installation/freebsd_en.md similarity index 100% rename from docs/installation/freebsd_en.md rename to docs/docs/installation/freebsd_en.md diff --git a/docs/installation/further_reading.include b/docs/docs/installation/further_reading.include similarity index 100% rename from docs/installation/further_reading.include rename to docs/docs/installation/further_reading.include diff --git a/docs/installation/generic_dependencies.include b/docs/docs/installation/generic_dependencies.include similarity index 100% rename from docs/installation/generic_dependencies.include rename to docs/docs/installation/generic_dependencies.include diff --git a/docs/installation/gentoo_en.md b/docs/docs/installation/gentoo_en.md similarity index 100% rename from docs/installation/gentoo_en.md rename to docs/docs/installation/gentoo_en.md diff --git a/docs/installation/migrating_from_source_otp_en.md b/docs/docs/installation/migrating_from_source_otp_en.md similarity index 100% rename from docs/installation/migrating_from_source_otp_en.md rename to docs/docs/installation/migrating_from_source_otp_en.md diff --git a/docs/installation/migrating_to_akkoma.md b/docs/docs/installation/migrating_to_akkoma.md similarity index 100% rename from docs/installation/migrating_to_akkoma.md rename to docs/docs/installation/migrating_to_akkoma.md diff --git a/docs/installation/netbsd_en.md b/docs/docs/installation/netbsd_en.md similarity index 100% rename from docs/installation/netbsd_en.md rename to docs/docs/installation/netbsd_en.md diff --git a/docs/installation/openbsd_en.md b/docs/docs/installation/openbsd_en.md similarity index 100% rename from docs/installation/openbsd_en.md rename to docs/docs/installation/openbsd_en.md diff --git a/docs/installation/openbsd_fi.md b/docs/docs/installation/openbsd_fi.md similarity index 100% rename from docs/installation/openbsd_fi.md rename to docs/docs/installation/openbsd_fi.md diff --git a/docs/installation/optional/media_graphics_packages.md b/docs/docs/installation/optional/media_graphics_packages.md similarity index 100% rename from docs/installation/optional/media_graphics_packages.md rename to docs/docs/installation/optional/media_graphics_packages.md diff --git a/docs/installation/otp_en.md b/docs/docs/installation/otp_en.md similarity index 100% rename from docs/installation/otp_en.md rename to docs/docs/installation/otp_en.md diff --git a/docs/installation/otp_vs_from_source.include b/docs/docs/installation/otp_vs_from_source.include similarity index 100% rename from docs/installation/otp_vs_from_source.include rename to docs/docs/installation/otp_vs_from_source.include diff --git a/docs/installation/otp_vs_from_source_source.include b/docs/docs/installation/otp_vs_from_source_source.include similarity index 100% rename from docs/installation/otp_vs_from_source_source.include rename to docs/docs/installation/otp_vs_from_source_source.include diff --git a/docs/support.include b/docs/docs/support.include similarity index 100% rename from docs/support.include rename to docs/docs/support.include diff --git a/docs/mkdocs.yml b/docs/mkdocs.yml new file mode 100644 index 000000000..975f36f9c --- /dev/null +++ b/docs/mkdocs.yml @@ -0,0 +1,37 @@ +site_name: Akkoma Documentation +theme: + favicon: 'images/pleroma_logo_vector_bg_32.png' + name: 'material' + custom_dir: 'theme' + # Disable google fonts + font: false + logo: 'images/pleroma_logo_vector_nobg.svg' + features: + - tabs + palette: + primary: 'deep purple' + accent: 'blue grey' + +extra_css: + - css/extra.css +repo_name: 'AkkomaGang/docs' +repo_url: 'https://akkoma.dev/AkkomaGang/docs' + +extra: + repo_icon: gitea + +markdown_extensions: + # Note/warning blocks https://squidfunk.github.io/mkdocs-material/extensions/admonition/ + - admonition + - codehilite: + guess_lang: false + # Make it possible to link to every header https://squidfunk.github.io/mkdocs-material/extensions/permalinks/ + - toc: + permalink: true + - pymdownx.tasklist: + custom_checkbox: true + - pymdownx.superfences + - pymdownx.tabbed + - pymdownx.details + - markdown_include.include: + base_path: docs diff --git a/docs/requirements.txt b/docs/requirements.txt new file mode 100644 index 000000000..70fbd9dc4 --- /dev/null +++ b/docs/requirements.txt @@ -0,0 +1,22 @@ +click==8.1.3 +ghp-import==2.1.0 +importlib-metadata==4.12.0 +Jinja2==3.1.2 +Markdown==3.3.7 +markdown-include==0.6.0 +MarkupSafe==2.1.1 +mergedeep==1.3.4 +mkdocs==1.3.0 +mkdocs-bootswatch==1.1 +mkdocs-material==8.1.8 +mkdocs-material-extensions==1.0.3 +packaging==21.3 +Pygments==2.11.2 +pymdown-extensions==9.1 +pyparsing==3.0.9 +python-dateutil==2.8.2 +PyYAML==6.0 +pyyaml_env_tag==0.1 +six==1.16.0 +watchdog==2.1.9 +zipp==3.8.0 diff --git a/docs/theme/partials/source.html b/docs/theme/partials/source.html new file mode 100644 index 000000000..3ed0fff24 --- /dev/null +++ b/docs/theme/partials/source.html @@ -0,0 +1,64 @@ + + +{% import "partials/language.html" as lang with context %} + + +{% set platform = config.extra.repo_icon or config.repo_url %} +{% if "github" in platform %} + {% set repo_type = "github" %} +{% elif "gitlab" in platform %} + {% set repo_type = "gitlab" %} +{% elif "bitbucket" in platform %} + {% set repo_type = "bitbucket" %} +{% else %} + {% set repo_type = "" %} +{% endif %} + +{% if page and page.url.startswith('backend') %} + {% set repo_url = "https://git.pleroma.social/pleroma/pleroma" %} + {% set repo_name = "pleroma/pleroma" %} +{% elif page and page.url.startswith('frontend') %} + {% set repo_url = "https://git.pleroma.social/pleroma/pleroma-fe" %} + {% set repo_name = "pleroma/pleroma-fe" %} +{% else %} + {% set repo_url = config.repo_url %} + {% set repo_name = config.repo_name %} +{% endif %} + + + + {% if repo_type %} +
+ + + +
+ {% endif %} +
+ {{ repo_name }} +
+