1
0
Fork
You've already forked website
0
Public repository to manage the contributions for the gadgetbridge.org website.
Shell 52.9%
Python 47.1%
Pelzvieh aa4b9447cd Updated hints on Garmin Venu X1
Signed-off-by: Pelzvieh <pelzvieh@noreply.codeberg.org>
2025年09月02日 20:10:10 +02:00
.vscode Move index styles to overrides 2025年05月20日 17:56:03 +03:00
docs Updated hints on Garmin Venu X1 2025年09月02日 20:10:10 +02:00
scripts Enable blog and RSS 2025年03月30日 22:44:51 +02:00
.domains Add www.gadgetbridge.org to .domains 2023年12月22日 14:19:30 +00:00
.gitattributes First commit 2023年09月07日 14:31:42 +03:00
.gitignore Update links (see description) 2024年07月26日 00:18:34 +03:00
.python-version Add WI-SP600N 2024年01月28日 13:36:23 +03:00
device_support.yml Add Anker Soundcore AeroFit 2 2025年08月25日 19:30:25 +01:00
extra_config.yml Update OPPO Enco Air2 support 2025年04月06日 15:51:19 +01:00
LICENSE Add AGPLv3 license 2023年09月14日 14:31:15 +03:00
mkdocs.yml Add Haylout Watch 2 Pro 2025年08月25日 19:12:31 +01:00
optional_tools.json Use a bash script as an alternative to Makefile 2023年11月27日 22:09:39 +03:00
pyproject.toml Update dependency mkdocs-material to v9.6.18 2025年08月23日 01:13:24 +00:00
README.md Add artworks, some tweaks & update README 2025年02月09日 22:00:12 +00:00
renovate.json Ignore "python" in renovate 2024年04月27日 03:40:41 +03:00
tasks.sh Remove feed_rss_updated.xml 2025年07月01日 17:35:50 +02:00

Website

A documentation and home page used as website for Gadgetbridge app.

Contribute

Contributions are welcome; thanks for taking time into improving the documentation!

The documentation uses Mkdocs (specifically, with Material for Mkdocs theme) to generate a static site from Markdown files. So if you are already familiar with Markdown, you can check out the existing pages to contribute to and send a pull request for it if you would like.

Within the website, there is a "eye" icon in the top corner of every page that directly takes you to the source Markdown file of the current page. In addition to that, there is also a "report" icon that takes you to the creating a new issue, so you can still contribute even if you are not familiar with Git.

The configuration of the documentation lies at mkdocs.yml file. There is also a extra_config.yml file for storing custom configuration that is specific to this documentation. Since it is going to be merged with mkdocs.yml during build step, they are separated for better readability.

If you have or/and know a gadget that works with Gadgetbridge, you can add (or update, if it already exists) its entry to device_support.yml file and reference it in the Markdown page.

The documentation depends on additional Python code (such as referencing code/PR/issues) to later call them in Markdown, these functions are defined in docs/_misc/macros.py.

Building

Mkdocs itself depends on Python, therefore a Python environment is required to get running the documentation.

Having a virtual/isolated Python environment is strongly recommended (and it is mandatory for scripts) to not break user/system-wide Python installations. One of ways to have per-project Python installations is installing rye.

There is a tasks.sh bash script provided in the repository to make working with the documentation easier. Here are some useful commands;

Install dependencies:

$ ./tasks.sh deps deps_tools

deps will require having rye installed, because since rye doesn't expose pip it has own command to install and manage dependencies. If you use another Python version/package manager, calling pip install . (or setuptools-compatible tool) should be enough as the pyproject.toml file doesn't use non-standard keys.

deps_tools downloads few command line tools to current folder, which later used for minifying the generated documentation. (HTML & images) It is not required to have these tools to have documentation built, so you can omit this command (by simply running ./tasks.sh deps alone) if you don't want to download them.

Preview documentation locally:

$ ./tasks.sh serve

Build documentation:

$ ./tasks.sh dist

Publish documentation:

$ ./tasks.sh publish

By default, it pushes the documentation to pages branch in Freeyourgadget/gadgetbridge_org repository.

To publish the documentation, it needs to be first built with ./tasks.sh dist. The script will fail if there is no output folder created by dist task. To do the both, (build & deploy), simply run ./tasks.sh dist publish.

License

This documentation with its all content has provided under GNU Affero General Public License (AGPLv3) unless written otherwise.

This documentation is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.