Contributing & RFCs
Redstart is a public good and contributions are welcome.
Building from source
git clone https://github.com/nightswatchhq/redstart
cd redstart
cargo build
cargo test
The workspace is a conventional compiler pipeline split across crates:
redstart-parser → redstart-loader → redstart-checker → redstart-codegen,
with redstart-test (native test interpreter), redstart-lsp (language server),
and redstart-cli (the redstart binary) on top.
CI runs fmt, clippy -D warnings, the test suite, and the eject-path
conformance build for every example on every push.
Language design: the RFC process
Substantial changes to the language — new syntax, new semantics, changes to the generated output — go through a lightweight RFC process so the design is recorded and discussed before it’s built. This is also our answer to the bus-factor question: the language is specified, not just implemented.
RFCs live in rfcs/ in the repository. To propose one:
- Copy
rfcs/0000-template.mdtorfcs/0000-my-feature.md. - Fill it in — motivation, design, alternatives, drawbacks.
- Open a pull request. The number is assigned when it’s accepted.
See rfcs/README.md for the full lifecycle, and
RFC-0001 for the foundational design rationale.