Skip to content

Contributing

Molt combines a React frontend, a Tauri/Rust backend, and a bundled Python kernel server. A complete change often crosses more than one layer, so contributors should identify the owning boundary and run the corresponding quality gates.

  1. Set up the development environment.
  2. Review the repository architecture to find the owning layer.
  3. Use the runtime data model, kernel protocol, and Tauri command API when changing cross-layer contracts.
  4. Run the testing and quality matrix for the affected layers.
  5. Use the release process when preparing distributable macOS artifacts.

The source repository’s agent guidance requires a granular commit after each completed logical task. Keep changes focused and use descriptive messages. Do not combine unrelated frontend, backend, documentation, or release changes merely because they were developed together.

The source repository’s CONTRIBUTING.md defines the supported toolchain, commands, code ownership, runtime boundaries, and manual checks. Use a pull request against main so the macOS CI jobs can review Rust, Python, and frontend changes together.

At minimum, run:

Terminal window
cd src-tauri
cargo clippy -- -D warnings
cargo test
cd ..
python3 -m pytest tests/python/ -v
npm run typecheck
npm run lint
npm run test

Run a Tauri development session for changes that affect window behavior, menus, process lifecycle, native effects, settings, or frontend/backend integration.