Thank you for your interest in contributing! We follow a "Dual-Track" architecture where human-readable documentation lives in the root and machine-readable policies live in .machine_readable/.
We welcome contributions in many forms:
- Code: Improving the core stack or extensions
- Documentation: Enhancing docs or AI manifests
- Testing: Adding property-based tests or formal proofs
- Bug reports: Filing clear, reproducible issues
- Read the AI Manifest: Start with
0-AI-MANIFEST.a2mlto understand the repository structure. - Environment: Use
guix shell -D -f guix.scm(ordirenv allowif the.envrcis honoured) to set up your tools. Guix is the canonical packager per standards#101; the priornix developfallback was retired estate-wide. - Task Runner: Use
justto see available commands (just --list).
This repo is a Julia package registry. To register a new package or a new version:
- Confirm the upstream package meets the registry's quality bar (see GOVERNANCE.adoc — SPDX headers, REUSE-compliant
LICENSES/, OpenSSF Scorecard baseline, no banned-language files). - Add or update the relevant per-letter directory (e.g. a new package
Foolives underF/Foo/). Each version directory contains the standard Julia registry files:Package.toml,Versions.toml,Deps.toml,Compat.toml,WeakCompat.toml. - Update the top-level
Registry.tomlindex. - Open a PR titled
feat(registry): register <Package> v<X.Y.Z>(orfeat(registry): add <Package> v<X.Y.Z>).
docs/short-description # Documentation
test/what-added # Test additions
feat/short-description # New features
fix/issue-number-description # Bug fixes
refactor/what-changed # Code improvements
security/what-fixed # Security fixes
We follow Conventional Commits:
<type>(<scope>): <description>
[optional body]
[optional footer]
Types: feat, fix, docs, test, refactor, ci, chore, security
Before reporting:
- Search existing issues
- Check if it's already fixed in
main
When reporting, include:
- Clear, descriptive title
- Environment details (OS, versions, toolchain)
- Steps to reproduce
- Expected vs actual behaviour
All contributors are expected to adhere to our Code of Conduct.
By contributing, you agree that your contributions will be licensed under the same license as the project (see LICENSE).