Thank you for your interest in contributing! This document will help you get started.
- Fork the repository on GitHub
- Clone your fork:
git clone https://github.com/stylebending/wineventengine.git cd wineventengine - Install prerequisites:
- Rust (latest stable)
- Visual Studio Build Tools (Windows only)
# Build the project
cargo build --release
# Run tests
cargo test
# Run with example config
cargo run --release -- -c config.toml.example- Follow standard Rust formatting (
cargo fmt) - Run clippy before committing (
cargo clippy) - Keep functions focused and documented
- Use meaningful variable names
# Run all tests
cargo test
# Run specific crate tests
cargo test -p engine
cargo test -p actions
# Run with output
cargo test -- --nocapture-
Create a branch for your feature/fix:
git checkout -b feature/my-feature
-
Make your changes and test them
-
Commit with clear messages:
git commit -m "Add feature X to do Y" -
Push to your fork:
git push origin feature/my-feature
-
Open a Pull Request on GitHub with:
- Clear description of changes
- Why the change is needed
- Testing performed
- Bug fixes
- New event source plugins
- New action types
- Documentation improvements
- Lua API enhancements
- Performance optimizations
- Open an issue for bugs or feature requests
- Check existing issues and PRs first
- Join discussions in open issues
By contributing, you agree that your contributions will be licensed under the MIT License.