Skip to content

Code Documentation Base Template#98

Open
Pawel024 wants to merge 23 commits intomainfrom
documentation
Open

Code Documentation Base Template#98
Pawel024 wants to merge 23 commits intomainfrom
documentation

Conversation

@Pawel024
Copy link
Collaborator

@Pawel024 Pawel024 commented Feb 8, 2026

This pull request sets up the base code documentation infrastructure:

  • Added Doxygen configuration for extracting API docs from source code
  • Added Sphinx + Breathe configuration to process and build the Doxygen output into a clean documentation with the ReadTheDocs theme
  • Populated 2 example module index pages (fem.rst, geometry.rst) and formatted comments/docstrings for FunctionSpace and FemField so that they are rendered in the docs
  • Added a README describing what we use for documentation

@Pawel024 Pawel024 marked this pull request as ready for review February 9, 2026 14:15
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 a documentation build pipeline for MiTo by combining Doxygen (C++ API extraction) with Sphinx+Breathe (HTML site generation), and adds tutorial pages that embed example source code and captured outputs.

Changes:

  • Added Doxygen + Sphinx (ReadTheDocs theme) configuration and build artifacts for generating API docs.
  • Added Sphinx pages for geometry/fem modules and a tutorials section with 5 tutorial pages.
  • Added CI workflow + script to build/run tutorials, generate _tutorial_outputs, and build/deploy docs to GitHub Pages.

Reviewed changes

Copilot reviewed 18 out of 20 changed files in this pull request and generated 7 comments.

Show a summary per file
File Description
lib/mito/geometry/GeometricSimplex.h Small change in parametrization assembly (origin handling) while prepping docs-friendly comments.
lib/mito/fem/FunctionSpace.h Converted class header comment to Doxygen-style (@brief, @tparam).
lib/mito/fem/FemField.h Converted class header comment to Doxygen-style (@brief, @tparam).
docs/source/index.rst Added documentation site landing page and toctree structure.
docs/source/geometry.rst Added module index page rendering key geometry classes via Breathe.
docs/source/fem.rst Added module index page rendering key FEM classes via Breathe.
docs/source/tutorials.rst Added tutorials index and local build instructions.
docs/source/tutorial_1_functions.rst Added tutorial page embedding tutorial source and captured output.
docs/source/tutorial_2_tensors.rst Added tutorial page embedding tutorial source and captured output.
docs/source/tutorial_3_fields.rst Added tutorial page embedding tutorial source and captured output.
docs/source/tutorial_4_divergence_theorem_2d.rst Added tutorial page embedding tutorial source and captured output (plus artifacts section).
docs/source/tutorial_5_divergence_theorem_2d_in_3d.rst Added tutorial page embedding tutorial source and captured output.
docs/source/conf.py Added Sphinx configuration (extensions, Breathe, theme, highlighting).
docs/requirements.txt Added Python dependencies for building Sphinx docs.
docs/README.md Added documentation build README for developers.
docs/Makefile Added Sphinx make targets for local docs builds.
docs/Doxyfile Added Doxygen configuration to generate XML consumed by Breathe.
.github/workflows/docs.yaml Added CI workflow to build/run tutorials, build docs, and deploy to GitHub Pages.
.github/scripts/build_and_run_tutorials.sh Added script to build/run each tutorial and collect outputs/artifacts for Sphinx inclusion.
.gitignore Ignored generated Doxygen/Sphinx outputs and tutorial output artifacts produced in CI.

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

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

Copilot reviewed 18 out of 20 changed files in this pull request and generated 2 comments.


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

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants