-
--
Arch
- ```bash
- # Qt6
- sudo pacman -S qt6-base qt6-svg
-
- # Qt5
- sudo pacman -S qt5-base qt5-svg
- ```
-
--
Debian/Ubuntu
- ```bash
- # Qt6
- sudo apt install qt6-base-dev qt6-svg-dev
-
- # Qt5
- sudo apt install qtbase5-dev libqt5svg5-dev
- ```
-
--
Fedora
- ```bash
- # Qt6
- sudo dnf install qt6-qtbase-devel qt6-qtsvg-devel
-
- # Qt5
- sudo dnf install qt5-qtbase-devel qt5-qtsvg-devel
- ```
-
--
macOS
- ```bash
- brew install cmake ninja qtbase qtsvg
- ```
-
--
Windows (MSYS2 UCRT64)
- ```bash
- pacman -S mingw-w64-ucrt-x86_64-cmake \
- mingw-w64-ucrt-x86_64-ninja \
- mingw-w64-ucrt-x86_64-toolchain \
- mingw-w64-ucrt-x86_64-qt6-base \
- mingw-w64-ucrt-x86_64-qt6-svg
- ```
+
+
+
+Arch
+
+```bash
+# Qt6
+sudo pacman -S qt6-base qt6-svg
+
+# Qt5
+sudo pacman -S qt5-base qt5-svg
+```
+
+
+
+
+Debian/Ubuntu
+
+```bash
+# Qt6
+sudo apt install qt6-base-dev qt6-svg-dev
+
+# Qt5
+sudo apt install qtbase5-dev libqt5svg5-dev
+```
+
+
+
+
+Fedora
+
+```bash
+# Qt6
+sudo dnf install qt6-qtbase-devel qt6-qtsvg-devel
+
+# Qt5
+sudo dnf install qt5-qtbase-devel qt5-qtsvg-devel
+```
+
+
+
+
+macOS
+
+```bash
+brew install cmake ninja qtbase qtsvg
+```
+
+
+
+
+Windows (MSYS2 UCRT64)
+
+```bash
+pacman -S mingw-w64-ucrt-x86_64-cmake \
+ mingw-w64-ucrt-x86_64-ninja \
+ mingw-w64-ucrt-x86_64-toolchain \
+ mingw-w64-ucrt-x86_64-qt6-base \
+ mingw-w64-ucrt-x86_64-qt6-svg
+```
+
+
@@ -205,8 +230,3 @@ array must have text field set to NULL.
This software is distributed under [MIT license](http://www.opensource.org/licenses/mit-license.php),
so feel free to integrate it in your commercial products.
-
-
-
- [TOC]
-
diff --git a/dockle.toml b/dockle.toml
new file mode 100644
index 00000000..4700faed
--- /dev/null
+++ b/dockle.toml
@@ -0,0 +1,32 @@
+[project]
+name = "tray"
+version = "0.0.0"
+description = "Cross-platform implementation of a system tray icon with a popup menu and notifications."
+repository = "https://github.com/LizardByte/tray"
+logo = "tray.svg"
+favicon = "tray.svg"
+
+[build]
+output = "_site"
+work = ".dockle"
+strict = true
+clean = true
+
+[[targets]]
+name = "api"
+title = "tray documentation"
+framework = "doxygen"
+source = "."
+home = true
+
+[targets.doxygen]
+inputs = ["README.md", "src"]
+image_paths = ["docs/images"]
+extra_stylesheets = [
+ "https://cdn.jsdelivr.net/npm/@lizardbyte/shared-web@2026.920.12131/dist/crowdin-dockle-css.css",
+]
+extra_javascript = [
+ "https://cdn.jsdelivr.net/npm/@lizardbyte/shared-web@2026.920.12131/dist/crowdin.js",
+ "docs/crowdin.js",
+]
+main_page = "README.md"
diff --git a/docs/Doxyfile b/docs/Doxyfile
deleted file mode 100644
index a4c89eee..00000000
--- a/docs/Doxyfile
+++ /dev/null
@@ -1,41 +0,0 @@
-# This file describes the settings to be used by the documentation system
-# doxygen (www.doxygen.org) for a project.
-#
-# All text after a double hash (##) is considered a comment and is placed in
-# front of the TAG it is preceding.
-#
-# All text after a single hash (#) is considered a comment and will be ignored.
-# The format is:
-# TAG = value [value, ...]
-# For lists, items can also be appended using:
-# TAG += value [value, ...]
-# Values that contain spaces should be placed between quotes (\" \").
-#
-# Note:
-#
-# Use doxygen to compare the used configuration file with the template
-# configuration file:
-# doxygen -x [configFile]
-# Use doxygen to compare the used configuration file with the template
-# configuration file without replacing the environment variables or CMake type
-# replacement variables:
-# doxygen -x_noenv [configFile]
-
-# project metadata
-DOCSET_BUNDLE_ID = dev.lizardbyte.tray
-DOCSET_PUBLISHER_ID = dev.lizardbyte.tray.documentation
-PROJECT_BRIEF = "Cross-platform implementation of a system tray icon with a popup menu and notifications."
-PROJECT_ICON = ../tray.svg
-PROJECT_LOGO = ../tray.svg
-PROJECT_NAME = tray
-
-# project specific settings
-DOT_GRAPH_MAX_NODES = 50
-IMAGE_PATH = ../docs/images
-INCLUDE_PATH =
-
-# files and directories to process
-USE_MDFILE_AS_MAINPAGE = ../README.md
-INPUT = ../README.md \
- ../third-party/doxyconfig/docs/source_code.md \
- ../src
diff --git a/docs/crowdin.js b/docs/crowdin.js
new file mode 100644
index 00000000..8160fd18
--- /dev/null
+++ b/docs/crowdin.js
@@ -0,0 +1 @@
+globalThis.initCrowdIn('LizardByte-docs', 'dockle')
diff --git a/third-party/dockle b/third-party/dockle
new file mode 160000
index 00000000..c1bca827
--- /dev/null
+++ b/third-party/dockle
@@ -0,0 +1 @@
+Subproject commit c1bca827d905e3e64cc6663488f5f741e17e681a
diff --git a/third-party/doxyconfig b/third-party/doxyconfig
deleted file mode 160000
index 419127ba..00000000
--- a/third-party/doxyconfig
+++ /dev/null
@@ -1 +0,0 @@
-Subproject commit 419127bad87f49b2d45fa957ea7302abbb49c01f