First off, thank you for considering contributing to hyprKCS! It's people like you that make hyprKCS such a great tool.
- Reporting Bugs: If you find a bug, please open an issue. Include details about your environment (Hyprland version, distro) and steps to reproduce.
- Suggesting Features: Have an idea? open an issue to discuss it.
- Code Contributions: Fix bugs, add features, or improve documentation via Pull Requests.
Ensure you have the following installed on your system:
rustc/cargogtk4libadwaitapkg-config
- Fork the repository and clone it locally.
- Create a branch for your changes:
git checkout -b feature/my-new-feature
- Implement your changes. Ensure your code follows the existing style and architectural patterns (GTK4/Libadwaita with Rust).
- Verify your changes:
- Build:
cargo build - Run:
cargo run - Test:
cargo test - Check formatting:
cargo fmt --all -- --check
- Build:
- Commit your changes. Keep commit messages clear and concise.
- Push to your fork and submit a Pull Request.
- Style: Use
cargo fmtto ensure consistent formatting. - Error Handling: Use
anyhowfor application-level error handling. - UI: Leverage Libadwaita widgets to maintain a native look and feel.
- Safety: Avoid
unsafeblocks unless absolutely necessary for FFI. - Testing: Write tests for new features and bug fixes. Make sure existing tests pass.
By contributing to hyprKCS, you agree that your contributions will be licensed under the GPL-3.0 License.