ProductDocumentationExamplesBlogRoadmapGitHubGet Started
Available

Contributing

How to contribute to Krishiv — code, docs, and architecture decisions.

Overview

Krishiv is an open-source project under the Apache License 2.0. We welcome contributions of all kinds: code, documentation, bug reports, and feature requests.

Getting Started

  1. Fork the repository on GitHub.
  2. Clone your fork and create a feature branch.
  3. Make your changes following the coding standards below.
  4. Run the CI quality gates before submitting.
  5. Open a pull request with a clear description of the change.

Coding Standards

  • Use Rust 2024 edition.
  • Run cargo fmt before committing.
  • Run cargo clippy --workspace --exclude krishiv-python --exclude krishiv-chaos -- -D warnings.
  • All public crate boundaries must have explicit error types.
  • Avoid panics in library code.
  • Keep async boundaries clear; do not hide blocking work inside async tasks.

Architecture Decisions

Significant changes should include an ADR (Architecture Decision Record) under docs/decisions/. See existing ADRs for the format.

Testing

cargo test --workspace --exclude krishiv-python
cargo test -p krishiv-delta
cargo test -p krishiv-api
cargo test -p krishiv-runtime