Skip to content

Add auto-generated API documentation and GitHub Pages deployment#1448

Merged
liudger merged 4 commits intomainfrom
docs/api-reference
Apr 16, 2026
Merged

Add auto-generated API documentation and GitHub Pages deployment#1448
liudger merged 4 commits intomainfrom
docs/api-reference

Conversation

@liudger
Copy link
Copy Markdown
Owner

@liudger liudger commented Apr 16, 2026

This pull request adds a full documentation system to the project, including automated building and deployment of docs to GitHub Pages, as well as new Makefile targets and project dependencies for documentation. It introduces a comprehensive MkDocs configuration with Material theme, API reference pages using mkdocstrings, and user guides. The documentation can now be built and served locally, and is automatically published on pushes to main.

Documentation system and automation:

  • Added .github/workflows/docs.yaml GitHub Actions workflow to build documentation with MkDocs and deploy it to GitHub Pages on every push to main.
  • Added mkdocs.yml configuration using the Material theme, navigation, plugins (including mkdocstrings for API docs), and markdown extensions.
  • Updated pyproject.toml to add docs extra dependencies for documentation building (mkdocs-material, mkdocstrings).
  • Updated project documentation URL to point to the new GitHub Pages site.

Makefile improvements:

  • Added docs and docs-serve targets to the Makefile for building and serving documentation locally. [1] [2]

Documentation content:

  • Added new documentation pages under docs/:
    • index.md: Project overview and navigation.
    • getting-started.md: Installation, configuration, and usage examples.
    • api/client.md, api/models.md, api/exceptions.md, api/constants.md: API reference generated via mkdocstrings. [1] [2] [3] [4]

- Add mkdocs-material + mkdocstrings for auto-generated API docs
- Add docs pages: index, getting-started, API reference (client, models, exceptions, constants)
- Add GitHub Actions workflow for deploying to GitHub Pages
- Add docs dependency group to pyproject.toml
- Add docs/docs-serve Makefile targets
- Update Documentation URL to GitHub Pages
- Add site/ to .gitignore
@liudger liudger added documentation Solely about the documentation of the project. security Marks a security issue that needs to be resolved asap. labels Apr 16, 2026
Copilot AI review requested due to automatic review settings April 16, 2026 11:20
@liudger liudger self-assigned this Apr 16, 2026
- Replace long code example with concise quick-start
- Add link to full documentation on GitHub Pages
- Add documentation badge
- Update Makefile targets table with docs commands
Copy link
Copy Markdown
Owner Author

@liudger liudger left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@codecov
Copy link
Copy Markdown

codecov Bot commented Apr 16, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 99.89%. Comparing base (881f3a5) to head (1ae6297).
⚠️ Report is 5 commits behind head on main.

Additional details and impacted files
@@           Coverage Diff           @@
##             main    #1448   +/-   ##
=======================================
  Coverage   99.89%   99.89%           
=======================================
  Files           6        6           
  Lines         955      955           
  Branches      128      128           
=======================================
  Hits          954      954           
  Partials        1        1           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR introduces a MkDocs-based documentation system for python-bsblan, including API reference generation via mkdocstrings and automated GitHub Pages deployment, plus local build/serve Makefile targets.

Changes:

  • Added MkDocs configuration (Material theme) and documentation pages, including mkdocstrings-driven API reference.
  • Added a GitHub Actions workflow to build and deploy docs to GitHub Pages on pushes to main.
  • Added a docs dependency group plus Makefile targets for building/serving docs locally.

Reviewed changes

Copilot reviewed 11 out of 12 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
pyproject.toml Adds docs dependency group and updates the project Documentation URL.
mkdocs.yml Configures MkDocs Material, navigation, mkdocstrings, and markdown extensions.
docs/index.md Adds landing page with overview and quick example.
docs/getting-started.md Adds installation/configuration/usage guide and examples.
docs/api/client.md Adds mkdocstrings API reference page for the client and config classes.
docs/api/models.md Adds mkdocstrings API reference page for exported models/types.
docs/api/exceptions.md Adds mkdocstrings API reference page for exceptions.
docs/api/constants.md Adds mkdocstrings API reference page for constants/helpers.
Makefile Adds docs and docs-serve targets.
.gitignore Ignores MkDocs site/ build output.
.github/workflows/docs.yaml Adds CI workflow to build and deploy documentation to GitHub Pages.

Comment thread docs/getting-started.md
Comment thread docs/api/client.md Outdated
liudger added 2 commits April 16, 2026 13:51
The set_hot_water method takes a SetHotWaterParam dataclass, not
keyword arguments. Updated all examples in docs, copilot-instructions,
and skill files to use the correct calling convention.
@sonarqubecloud
Copy link
Copy Markdown

@liudger liudger merged commit 1d0d66e into main Apr 16, 2026
16 checks passed
@liudger liudger deleted the docs/api-reference branch April 16, 2026 12:01
@github-actions github-actions Bot locked and limited conversation to collaborators Apr 18, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

documentation Solely about the documentation of the project. security Marks a security issue that needs to be resolved asap.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants