gbdk-2020 | GameBoy Development Kit |
| download: https://git.y1.nz/archives/gbdk.tar.gz | |
| README | Files | Log | Refs | LICENSE |
docs/config/doxygen-awesome-theme/README.md
1 # Doxygen Awesome
2
3 [](https://github.com/jothepro/doxygen-awesome-css/releases/latest)
4 [](https://github.com/jothepro/doxygen-awesome-css/blob/main/LICENSE)
5 
6
7 <div class="title_screenshot">
8
9 
10
11 </div>
12
13 **Doxygen Awesome** is a custom CSS theme for Doxygen HTML documentation with many customization options.
14
15 ## Motivation
16
17 I really like how the Doxygen HTML documentation is structured, but IMHO it looks a bit outdated.
18
19 This theme is an attempt to modernize the visuals of Doxygen without changing its overall layout too much.
20
21 ## Features
22
23 - 🌈 Clean, modern design
24 - 🚀 Highly customizable by adjusting CSS variables
25 - 🧩 No changes to the HTML structure of Doxygen are required
26 - 📱 Improved mobile usability
27 - 🌘 Dark mode support!
28 - 🥇 Works best with **Doxygen 1.9.1** - **1.9.4** and **1.9.6** - **1.14.0**
29
30 ## Examples
31
32 Some websites using this theme:
33
34 - [Documentation of this repository](https://jothepro.github.io/doxygen-awesome-css/)
35 - [wxWidgets](https://docs.wxwidgets.org/3.2/)
36 - [OpenCV 5.x](https://docs.opencv.org/5.x/)
37 - [Zephyr](https://docs.zephyrproject.org/latest/doxygen/html/index.html)
38 - [Spatial Audio Framework (SAF)](https://leomccormack.github.io/Spatial_Audio_Framework/index.html)
39 - [Randolf Richardson's C++ classes](https://www.randolf.ca/c++/docs/)
40 - [libsl3](https://a4z.github.io/libsl3/)
41 - [DuMu<sup>x</sup>](https://dumux.org/docs/doxygen/master/)
42 - [OpenRemise](https://openremise.at/)
43
44 ## Installation
45
46 To use the theme when generating your documentation, bring the required CSS and JS files from this repository into your project.
47
48 This can be done in several ways:
49
50 - manually copying the files
51 - adding the project as a Git submodule
52 - downloading the project with CMake FetchContent
53 - adding the project as an npm/xpm dependency
54 - installing the theme system-wide
55
56 All theme files are located in the root of this repository and start with the prefix `doxygen-awesome-`. You may not need all of them. Follow the installation instructions to determine which files are required for your setup.
57
58 ### Git submodule
59
60 For projects that use Git, add the repository as a submodule and check out the desired release:
61
62 ```sh
63 git submodule add https://github.com/jothepro/doxygen-awesome-css.git
64 cd doxygen-awesome-css
65 git checkout v2.4.1
66 ```
67
68 ### CMake with FetchContent
69
70 For projects that build with CMake, the `FetchContent` module can be used to download the repository at configuration time.
71
72 Add the following snippet to your `CMakeLists.txt`:
73
74 ```cmake
75 include(FetchContent)
76 FetchContent_Declare(
77 doxygen-awesome-css
78 URL https://github.com/jothepro/doxygen-awesome-css/archive/refs/heads/main.zip
79 )
80 FetchContent_MakeAvailable(doxygen-awesome-css)
81
82 # Save the location the files were cloned into
83 # This allows us to get the path to doxygen-awesome.css
84 FetchContent_GetProperties(doxygen-awesome-css SOURCE_DIR AWESOME_CSS_DIR)
85
86 # Generate the Doxyfile
87 set(DOXYFILE_IN ${CMAKE_CURRENT_SOURCE_DIR}/doc/Doxyfile.in)
88 set(DOXYFILE_OUT ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile)
89 configure_file(${DOXYFILE_IN} ${DOXYFILE_OUT} @ONLY)
90 ```
91
92 This downloads the latest main (but any other revision could be used) and unpacks in the build folder. The `Doxyfile.in` can reference this location in the `HTML_EXTRA_STYLESHEET` field
93
94 ```text
95 HTML_EXTRA_STYLESHEET = @AWESOME_CSS_DIR@/doxygen-awesome.css
96 ```
97
98 When the configure stage of CMake is run, the `Doxyfile.in` is rendered to Doxyfile and Doxygen can be run as usual.
99
100 ### npm/xpm dependency
101
102 In the npm ecosystem, this project can be added as a development dependency
103 to your project:
104
105 ```sh
106 cd your-project
107 npm install https://github.com/jothepro/doxygen-awesome-css#v2.4.1 --save-dev
108
109 ls -l node_modules/@jothepro/doxygen-awesome-css
110 ```
111
112 Similarly, in the [xPack](https://xpack.github.io) ecosystem, this project can be added
113 as a development dependency to an [`xpm`](https://xpack.github.io/xpm/)
114 managed project.
115
116 ### System-wide
117
118 You can even install the theme system-wide by running `make install`.
119 The files will be installed to `/usr/local/share/` by default,
120 but you can customize the install location with `make PREFIX=/my/custom/path install`.
121
122 ### Choosing a layout
123
124 There are two layout options. Choose one of them and configure Doxygen accordingly:
125
126 <div class="tabbed">
127
128 - <b class="tab-title">Base Theme</b><div class="darkmode_inverted_image">
129 
130 </div>
131 Comes with the typical Doxygen titlebar. Optionally the treeview in the sidebar can be enabled.
132
133 Required files: `doxygen-awesome.css`
134
135 Required `Doxyfile` configuration:
136 ```
137 GENERATE_TREEVIEW = YES # optional. Also works without treeview
138 DISABLE_INDEX = NO
139 FULL_SIDEBAR = NO
140 HTML_EXTRA_STYLESHEET = doxygen-awesome-css/doxygen-awesome.css
141 HTML_COLORSTYLE = LIGHT # required with Doxygen >= 1.9.5
142 ```
143
144 - <b class="tab-title">Sidebar-Only Theme</b><div class="darkmode_inverted_image">
145 
146 </div>
147 Hides the top titlebar to give more space to the content. The treeview must be enabled in order for this theme to work.
148
149 Required files: `doxygen-awesome.css`, `doxygen-awesome-sidebar-only.css`
150
151 Required `Doxyfile` configuration:
152 ```
153
154 GENERATE_TREEVIEW = YES # required!
155 DISABLE_INDEX = NO
156 FULL_SIDEBAR = NO
157 HTML_EXTRA_STYLESHEET = doxygen-awesome-css/doxygen-awesome.css \
158 doxygen-awesome-css/doxygen-awesome-sidebar-only.css
159 HTML_COLORSTYLE = LIGHT # required with Doxygen >= 1.9.5
160 ```
161
162 </div>
163
164 <br>
165
166 @warning
167 - This theme is not compatible with the `FULL_SIDEBAR = YES` option provided by Doxygen!
168 - `HTML_COLORSTYLE` must be set to `LIGHT` since Doxygen 1.9.5!
169
170 ### Further installation instructions
171
172 - [Installing extensions](docs/extensions.md)
173 - [Customizing the theme (colors, spacing, border-radius, ...)](docs/customization.md)
174 - [Tips and Tricks for further configuration](docs/tricks.md)
175
176 ## Browser support
177
178 Tested with
179
180 - Chrome 140, Chrome 140 for Android, Chrome 141 for iOS
181 - Safari 26, Safari for iOS 26
182 - Firefox 143, Firefox 142 for Android, Firefox 143 for iOS
183 - Edge 140
184 - Opera One 122
185
186
187 The theme does not strive to be backward compatible with (significantly) older browser versions.
188
189
190 ## Credits
191
192 Thanks for all the bug reports and inspiring feedback on GitHub!
193
194 Special thanks to all the contributors:
195 <br><br>
196 <a href="https://github.com/jothepro/doxygen-awesome-css/graphs/contributors">
197 <img src="https://contrib.rocks/image?repo=jothepro/doxygen-awesome-css" />
198 </a>
199
200
201 <div class="section_buttons">
202
203 | Read Next |
204 |---------------------------------:|
205 | [Extensions](docs/extensions.md) |
206
207 </div>
This webpage is intended to be an accessible preview of this repository. To get a fuller picture, clone it and use the git CLI.