1
0
Fork
You've already forked website
0
Public repository to manage the contributions for the gadgetbridge.org website.
  • Shell 49%
  • Python 44.3%
  • Dockerfile 3.5%
  • Nix 3.2%
citizenserious beff6e229d Restructure Huami GPS tools and add AGPS Helper
Reorganize the existing aGPS tools into separate sections and add AGPS Helper as a new Android option.
2026年07月12日 03:29:27 +02:00
.devcontainer Switch devcontainer image to 0.11-python3.13-trixie 2026年06月24日 16:01:07 +01:00
.forgejo/workflows Update actions/checkout action to v7 2026年06月20日 15:56:07 +02:00
.vscode chore: add codium/vscode devcontainer 2025年09月04日 14:59:29 +00:00
docs Restructure Huami GPS tools and add AGPS Helper 2026年07月12日 03:29:27 +02:00
icons/custom Override codeberg logo 2026年04月13日 00:08:10 +01: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 Update to python 3.12.13 2026年04月24日 18:46:47 +01:00
device_support.yml Add Anker Soundcore Life Tune / XR 2026年07月11日 15:59:54 +01:00
extra_config.yml Add Victron SmartShunt 2026年06月11日 21:45:13 +01:00
flake.lock Migrate build to uv 2026年04月23日 22:49:14 +01:00
flake.nix Migrate build to uv 2026年04月23日 22:49:14 +01:00
LICENSE Add AGPLv3 license 2023年09月14日 14:31:15 +03:00
mkdocs.yml Add device-specific settings DSL 2026年07月04日 09:35:20 +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 beautifulsoup4 to ~=4.14.3 2026年05月10日 09:38:15 +02:00
README.md Migrate build to uv 2026年04月23日 22:49:14 +01:00
renovate.json Renovate: Disable github-actions for actions/git-pages 2026年05月24日 09:19:25 +01:00
tasks.sh Fix live reload 2026年05月31日 19:14:21 +01:00
uv.lock Update dependency beautifulsoup4 to ~=4.14.3 2026年05月10日 09:38:15 +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 uv.

Devcontainer

To speed up the dependency setup, this repository contains a devcontainer setting. If you open up the folder within vscode and install the vscode devcontainer extension, all dependencies will be set up automatically within a self contained container without polluting your host system.

Manual dependency installation

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 uv installed. 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.

Working with tasks.sh

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.