Home
🧭 Welcome to the control-toolbox Wiki
This wiki centralizes all essential resources for contributing, developing, and maintaining packages within the control-toolbox ecosystem.
Whether you are a new contributor, a developer, or a maintainer, this documentation will guide you step by step through setup, contribution workflow, and release procedures.
💡 Start Here: Contribution & Collaboration
Before anything else, read the Contribution Guidelines to understand how to work efficiently in this ecosystem.
- 👉 Contribution Guidelines
Key topics:- Understanding issues, branches, and pull requests
- Creating draft PRs to avoid accidental merges
- Requesting reviews from maintainers
- Best practices for clean commits and code style
⚡ Tip for newcomers: Start with this guide to quickly get up to speed on the contribution workflow.
🧰 Developer Environment Setup
Set up your Julia environment for development and testing.
-
Dev setup
Learn how to:- Configure your development environment (official registry, local paths)
- Add and develop Julia packages
- Distinguish between developer and user workflows
- Update dependencies efficiently
⚠️ Note: Local registries are now mostly obsolete; prefer using the General registry.
🧑💻 Developer Guide
Technical reference for development within the ecosystem.
-
Developer guide
Covers:- Cloning repositories
- Installing and configuring VSCode with Julia
- Running unit tests
- Building documentation with Documenter.jl
💡 Recommended order: read Contribution Guidelines → Developer Guide → Dev setup for a smooth start.
🚀 Release Management
Instructions for versioning and releasing packages.
-
Make a release
Includes:- Semantic versioning rules
- Tagging and registering packages in the General registry
- Legacy instructions for LocalRegistry.jl (deprecated)
🧩 Miscellaneous Resources
Additional notes, references, and advanced developer topics.
-
Misc
Useful tutorials, benchmarking guides, style conventions, and macros/DSL examples.
🧭 Quick Summary
| Section | Purpose |
|---|---|
| 💡 Contribution Guidelines | How to contribute and collaborate on repositories |
| 🧰 Dev setup | Configure your development environment |
| 🧑💻 Developer guide | Core development and documentation workflow |
| 🚀 Make a release | Release management and registry registration |
| 🧩 Misc | Other useful references and tips |
📚 Pro Tip:
If you are new, follow this order for the smoothest onboarding: