CONTRIBUTING

Help build XIOM.

Help build XIOM.

The project is pre-beta and the standard library is beta. Contributions run on the same rule as the code: explicit intent, verified changes, honest claims.

The canonical contribution guide lives in the organization repository. This page summarizes the path and links to the policy sources; if anything here disagrees with those documents, they win.

Start here

Contribution guide

The default guide for every repository in the organization, unless a repository overrides it. Prerequisites, per-repository quick starts, development rules, commit style and review expectations.

read CONTRIBUTING.md

Licensing and sign-off

MIT OR Apache-2.0, inbound equals outbound. No CLA: you keep the copyright in your contribution. Every commit carries a DCO 1.1 sign-off.

licensing policy · DCO text

Governance

XIOM runs under a lead-maintainer model today; routine changes go through pull requests and language or standard library changes go through the RFC process, which opens with the public launch.

read GOVERNANCE.md

The path

  1. Fork the repository and branch from main: feat/<topic>, fix/<topic> or docs/<topic>.
  2. Make one logical change. Add or update tests, and keep documentation in the same change when behavior changes.
  3. Write Conventional Commits in the imperative mood: feat:, fix:, docs:, test:, chore:, refactor:. Breaking changes use ! and a BREAKING CHANGE: paragraph.
  4. Sign off every commit with git commit -s. The name and email must match the commit author or committer.
  5. Open the pull request with the repository template, paste the exact commands you ran, and link the issue it closes.
  6. Required checks must pass and a maintainer reviews. Keep the branch rebased; main stays linear.

Probe first: reduce a suspected compiler or standard library defect to a minimal .xi program before changing anything, and keep the probe with the fix. A five-line reproduction gets triaged; a five-hundred-line report usually cannot be.

Sign-off, in practice

git commit -s -m "fix: correct tz offset for DST boundaries"

Signed-off-by: Your Name <you@example.com>

CI checks every commit in a pull request. If you forget a sign-off, amend the last commit with git commit --amend -s --no-edit or sign a whole branch with git rebase --signoff main. If you contribute as part of your job, confirm your employer allows submitting the work under this license before signing off.

Where things live

RepositoryContents
xiomCompiler and tooling (package manager, language server, debugger, MCP server, formatter, doc generator) plus end-to-end tests.
stdlibStandard library sources, smoke corpus, known-answer test vectors and probes.
registryPackage registry service.
websiteThis site and the documentation sources.
playgroundBrowser playground.
.githubOrganization profile, process documents and default templates.

Conduct, help and security

No self-hosted release or download is claimed here: the project is pre-beta, the standard library is beta, and the released toolchain is the bootstrap compiler.