Skip to content

39 explore automatic documentation generation#53

Open
paucablop wants to merge 11 commits intomainfrom
39-explore-automatic-documentation-generation
Open

39 explore automatic documentation generation#53
paucablop wants to merge 11 commits intomainfrom
39-explore-automatic-documentation-generation

Conversation

@paucablop
Copy link
Collaborator

  • Add documentation using sphinx
  • Create documentation release GH action
  • Minor modifications in docstrings to support sklearn-like documentation

Add sphinx, pydata-sphinx-theme, myst-parser, and numpydoc as optional
dependencies in a docs group. Add docs/_build/ to .gitignore.
Add conf.py with pydata-sphinx-theme, numpydoc, autodoc, intersphinx,
and mocked imports for sklearn/numpy/scipy. Add landing page, getting
started guide, and API reference page.
Add Taskfile tasks to build the Sphinx documentation and serve it
locally on port 8000.
Add documentation page listing supported scikit-learn estimators by
category, unsupported estimators, chemotools integration, and
available serialization formats.
Convert See Also section to References with proper numbered citations.
Rename Developer Notes to Notes to match numpydoc conventions.
@paucablop paucablop requested review from Gnpd and Copilot March 15, 2026 22:02
@paucablop paucablop self-assigned this Mar 15, 2026
@paucablop paucablop added the documentation Improvements or additions to documentation label Mar 15, 2026
@paucablop paucablop linked an issue Mar 15, 2026 that may be closed by this pull request
Copy link
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 Sphinx-based documentation for OpenModels and adds an automated GitHub Pages deployment workflow, along with small docstring tweaks to better match scikit-learn/numpydoc conventions.

Changes:

  • Add a Sphinx docs site (MyST Markdown + pydata-sphinx-theme + numpydoc) and new documentation pages.
  • Add a GitHub Actions workflow to build and deploy docs to GitHub Pages.
  • Update SklearnSerializer docstring sections to use References/Notes formatting.

Reviewed changes

Copilot reviewed 9 out of 12 changed files in this pull request and generated 6 comments.

Show a summary per file
File Description
pyproject.toml Adds an optional Poetry docs dependency group for Sphinx tooling.
openmodels/serializers/sklearn/sklearn_serializer.py Docstring formatting updates for numpydoc-style sections.
docs/index.md New docs landing page + toctree, includes quick-start snippet.
docs/getting_started.md New getting-started guide with example usage.
docs/supported_models.md New supported-models overview and custom estimator guidance.
docs/api.md New API reference page using Sphinx autodoc.
docs/conf.py Sphinx configuration (extensions, theme, intersphinx, etc.).
Taskfile.yml Adds tasks to build/serve docs locally.
.gitignore Ignores Sphinx build output directory.
.github/workflows/docs.yml Adds CI workflow to build and deploy docs to GitHub Pages.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

You can also share your feedback on Copilot code review. Take the survey.

Comment on lines +4 to +8
push:
branches:
- main
- 39-explore-automatic-documentation-generation
workflow_dispatch:
Copy link
Collaborator Author

Choose a reason for hiding this comment

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

I think we can accept this one, or delete the branch after merging and clean the docs.yml in the next PR

Comment on lines +23 to +26
- uses: actions/checkout@v6

- name: Set up Python
uses: actions/setup-python@v6
Copy link
Collaborator Author

Choose a reason for hiding this comment

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

I don't think this is good enough argument to downgrade the versions of the actions (some of them two versions) I would ignore this comment

docs:html-all:
desc: Build the Sphinx documentation (clean + full rebuild)
cmds:
- "poetry run sphinx-build -b html docs docs/_build/html"
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
paucablop and others added 2 commits March 16, 2026 06:14
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
project = "OpenModels"
copyright = "2026, Alejandro Gutierrez and Raúl Marín"
author = "Alejandro Gutierrez, Raúl Marín"
release = "0.1.0-alpha.21"
Copy link
Owner

Choose a reason for hiding this comment

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

Now I see the version here, just a small note: We might update the version (also in pyproject.toml) before merging to 0.1.0-alpha.22, since we have a workflow that publish main in TestPyPI (check ci.yml).
This approach has a real friction point: every merge to main requires a version bump or CI breaks. I think we should change this some how...

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

Good point! I'll remove it :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Explore Automatic Documentation Generation

3 participants