-
Notifications
You must be signed in to change notification settings - Fork 0
Contribution Guidelines
Olivier Cots edited this page Oct 30, 2025
·
1 revision
Before contributing, please carefully read the following documentation:
π Developer Guide
This guide is essential to understand how to work efficiently within the control-toolbox ecosystem.
It explains how to clone a repository, set up your development environment, run unit tests, and build the documentation.
-
Clone the repository
- Copy the repository URL (SSH or HTTPS) and run:
cd ~/dev git clone the-url-you-have-copied
- Example:
cd ~/dev git clone git@github.com:control-toolbox/MyAwesomePackage.jl.git
- Copy the repository URL (SSH or HTTPS) and run:
-
Install VSCode
- Install Visual Studio Code and the Julia extension.
- Recommended extensions:
- GitHub Actions
- Markdown Preview for GitHub
- Jupyter & Jupyter Renderers
- Markdown Alerts
-
Run unit tests
- In VSCode:
using Pkg Pkg.activate(".") Pkg.test()
- π See Unit Testing to learn how to add your own tests.
- In VSCode:
-
Build the documentation
- In the terminal:
using Pkg Pkg.activate("docs") Pkg.develop(path=pwd()); include("docs/make.jl"); Pkg.rm("MyAwesomePackage")
- This will generate the documentation in
docs/build/index.html. - For more details, see Documenter.jl.
- In the terminal:
Once your environment is ready, follow the standard workflow:
Issue β Branch β Edit β Commit & Push β Draft PR β Review
- Go to the repositoryβs Issues page.
- Select an issue to work on or create a new one if needed.
Each contribution must be linked to a corresponding issue.
-
From the issue page, click βCreate a branchβ.
This automatically creates a branch linked to the issue.
- Clone (or fork) the repository if needed, then switch to your new branch.
- Apply your changes (e.g., remove a line, fix a bug, add a new feature).
- Make a clear commit with an explicit message, then push:
git add . git commit -m "Fix typo in documentation" git push
- On GitHub, open a Pull Request from your branch.
- Convert it to a draft PR to indicate that work is in progress.
This prevents premature merges and signals to reviewers that the PR is not yet ready.
- Assign a reviewer, for instance @ocots or @jbcaillau.
- Mention them in a comment:
@ocots please make a review
Important
π Read this before contributing:
π Developer Guide
It covers:
- How to clone a repository and run unit tests
- How to build documentation with Documenter.jl
- How to set up your VSCode environment
- Best development practices in the project
β Summary
- Read the Developer Guide
- Create an issue and a dedicated branch
- Edit the code and push your changes
- Open a draft Pull Request
- Request a review from a reviewer