Contributing to Stan

A Developer’s Guide to the Core, Interfaces, and First Contributions

Author

Florence Bockting

Published

August 17, 2026

Goals

This material is for anyone interested in contributing to Stan but unsure where to start. By the end of the tutorial, you will be able to:

  • Place yourself in the ecosystem: Know which projects make up Stan, from the compiler and math library through CmdStan to the language interfaces and workflow packages, and work out which repository a given contribution belongs in.
  • Pick a contribution that fits you: Recognise the full range of ways to help, from answering questions on Stan Discourse, to filing bug reports and feature requests, improving documentation, writing case studies, and contributing code.
  • Reach out effectively: Open a GitHub issue or pull request that maintainers can act on, and know when Discourse is the better place to start the conversation instead.
  • Find the right information: Match a question to the right resource among user guides, API documentation, case studies, and articles.
  • Follow a concrete first contribution: The checklist walks step by step through the practicalities, with a separate checklist for the R packages, the ArviZ Python packages, and the Stan Math C++ library. These are three genuinely different processes — different base branch, test runner, and changelog handling — so the chapter ends with a table showing where they diverge.
  • Use the contributor skills: This repository ships a set of Agent Skills for the Stan contribution workflows. They work with an LLM agent, and they work on their own as human-readable recipes, issue templates, and a pre-pull-request check script.
  • See it done end to end: Two walkthrough chapters follow a real contribution from finding an issue to writing the pull request, including the steps that commonly go wrong — one to an R package, posterior, and one to a Python package, arviz-stats. Both also show the Agent Skills in this repository being used along the way.

You do not need to be a professional software developer or statistician, and you do not need prior open-source experience.

Contents

  1. What is Stan?
  2. The Stan ecosystem
  3. How to contribute
  4. Finding information
  5. Checklist
  6. The Stan contributor skills
  7. Walkthrough: contributing to an R package
  8. Walkthrough: contributing to ArviZ