Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/shiinasama/roxy


https://github.com/shiinasama/roxy

action doxygen doxygen-awesome-css package

Last synced: about 1 month ago
JSON representation

Awesome Lists containing this project

README

        

# Roxy

This is a generic solution for `doxygen` + `doxygen-awesome-css`, as well as support for bundling static assets into doxygen output.

Support GitHub README/Pages, GitLab README/Pages.

## Usage

### GitHub Action

[Source](https://github.com/libsese/sese)

```yml
- name: Build docs
uses: SHIINASAMA/[email protected]
with:
DOXYFILE: 'docs/Doxyfile'
RESOURCE_FOLDER: 'static'
OUTPUT_FOLDER: 'build/html'
```

### GitLab CI

[Source](https://gitlab.mikumikumi.xyz/kaoru/roxy-example)

```yml
stages:
- deploy

pages:
stage: deploy
image: reg.mikumikumi.xyz/base/roxy
variables:
PROJECT_PATH: /builds/kaoru/roxy-example
DOXYFILE: docs/Doxyfile
RESOURCE_FOLDER: static
OUTPUT_FOLDER: build/docs
script:
- /usr/local/bin/entrypoint.sh
- mv build/docs public
artifacts:
paths:
- public
rules:
- if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
when: always
```

### docker

[Source](https://github.com/libsese/sese)

```sh
docker build -t roxy .
docker run --rm -e DOXYFILE=docs/Doxyfile -e PROJECT_PATH=/project -e OUTPUT_FOLDER=build/html -e RESOURCE_FOLDER=static -v .:/project roxy
```

> [!NOTE]
> The `OUTPUT_FOLDER` must be the same as the html output location in the `DOXYFILE` configuration file.

## Arguments

- `DOXYGEN_AWESOME_CSS_VERSION`:
version of doxygen-awesome-css, defalut to v2.3.3
- `PROJECT_PATH`:
project path
- `DOXYGEN_CONTEXT_FOLDER`:
Doxygen working dir in PROJECT_PATH
- `DOXYFILE`:
doxyfile file in PROJECT_PATH
- `RESOURCE_FOLDER`:
resource folder in PROJECT_PATH
- `OUTPUT_FOLDER`:
doxygen folder in PROJECT_PATH

## Apply doxygen-awesome-css

Doxygen can not overwrite option via cli, You may set options by manually:

```ini
GENERATE_HTML=YES
MARKDOWN_SUPPORT=YES
GENERATE_TREEVIEW=YES
DISABLE_INDEX=NO
FULL_SIDEBAR=NO
HTML_COLORSTYLE=LIGHT
HTML_HEADER=/doxygen-awesom-css/doxygen-custom/header.html
HTML_EXTRA_STYLESHEET=/doxygen-awesom-css/doxygen-awesome.css,/doxygen-awesom-css/doxygen-awesome-sidebar-only.css,/doxygen-awesom-css/doxygen-awesome-sidebar-only-darkmode-toggle.css,/doxygen-awesom-css/doxygen-custom/custom.css,/doxygen-awesom-css/doxygen-custom/custom-alternative.css
HTML_EXTRA_FILES=/doxygen-awesom-css/doxygen-awesome-darkmode-toggle.js,/doxygen-awesom-css/doxygen-awesome-fragment-copy-button.js,/doxygen-awesom-css/doxygen-awesome-interactive-toc.js,/doxygen-awesom-css/doxygen-awesome-paragraph-link.js,/doxygen-awesom-css/doxygen-awesome-tabs.js,/doxygen-awesom-css/doxygen-custom/toggle-alternative-theme.js
```