Skip to content

Contributing to Astral

Scope and goals

Astral is a performance-first runtime for real-time engines. Contributions should preserve: - Zero/low-allocation hot paths - Stable C ABI principles - Portability across desktop/mobile/embedded profiles

Build and test

Native dev build:

cmake --preset dev
cmake --build --preset dev -j
ctest --preset dev -j8

Release validation:

cmake --preset release-with-tests
cmake --build --preset release-with-tests -j
ctest --preset release-with-tests -j8

Coding standards

See docs/rules/CODING_STANDARDS.md.

Key expectations: - No STL containers in core hot paths - No exceptions across the C ABI - Avoid hidden allocations and syscalls in steady-state inference/streaming

Pull requests

Please include: - Motivation and scope (what and why) - Validation performed (tests/benchmarks/gates) - Platform(s) tested

Avoid drive-by refactors and unrelated formatting changes; keep PRs focused.

Contribution license

Unless explicitly stated otherwise, contributions submitted for inclusion in Astral are licensed under the Apache License 2.0 under the terms in LICENSE.