docs/README.md— index of all guides (architecture, HPC, tutorials). API reference (HTML) vs prose: see the opening table there.docs/learning_paths.md— run / extend / integrate tracks.docs/tutorials/README.md— step-by-step tutorials (VTK, HeFFTe, spectral examples, GPU, …).docs/personas.md— short entry points by role (cluster runner, model developer, integrator).docs/tutorials/add_catch2_test.md— minimal Catch2 /ctestpattern.docs/showcase.md— figures mapped to apps and examples.docs/testing.md—ctest,openpfc-tests, MPI test CMake options.docs/contributing-docs.md— link checks, SPDX headers, where to add cross-links in the doc index.- Run from the repo root:
python3 scripts/check_doc_links.py - Style for code and headers:
docs/styleguide.md - Extending the library (models,
App, validation):docs/extending_openpfc/README.md,docs/class_tour.md,docs/tutorials/custom_app_minimal.md,docs/parameter_validation.md
Follow INSTALL.md for MPI, HeFFTe, and CMake. Run tests with your configured build (e.g. ctest or the project’s test targets) after OpenPFC_BUILD_TESTS=ON.
Pull requests run workflows under .github/workflows/: ci.yml (main build/test matrix on Ubuntu 24.04), docs.yml (markdown link check via scripts/check_doc_links.py, Doxygen when enabled), coverage.yml, asan.yml, clang-tidy.yml. Doc-only edits under docs/** still trigger the Documentation workflow’s link job—run python3 scripts/check_doc_links.py locally before pushing.
User-visible and developer-facing changes are recorded in CHANGELOG.md. Add a note under [Unreleased] when your change affects behavior, CMake options, or config file keys.
Use GitHub Issues for bugs and feature discussion.