Thank you for your interest in contributing to Voxtype! This document provides guidelines for contributing.
- Report bugs - Open an issue describing the bug
- Request features - Open an issue describing the feature
- Submit code - Fork, make changes, and submit a pull request
- Improve documentation - Help make the docs clearer
- Help others - Answer questions in discussions
- Rust (stable, 1.70+)
- Linux with Wayland
- Build dependencies:
- Arch:
sudo pacman -S base-devel clang alsa-lib - Debian:
sudo apt install build-essential libclang-dev libasound2-dev - Fedora:
sudo dnf install @development-tools clang-devel alsa-lib-devel
- Arch:
# Clone the repo
git clone https://github.com/peteonrails/voxtype
cd voxtype
# Build debug version (faster compilation)
cargo build
# Build release version
cargo build --release
# Run tests
cargo test
# Run with verbose output
cargo run -- -vv- Follow Rust conventions (use
cargo fmtandcargo clippy) - Write clear commit messages
- Add tests for new functionality
- Update documentation as needed
- Create an issue describing the bug
- Fork the repository
- Create a branch:
git checkout -b fix/description - Make your fix
- Test thoroughly
- Submit a pull request referencing the issue
- Open an issue to discuss the feature first
- Wait for feedback before investing significant time
- Fork and create a branch:
git checkout -b feature/description - Implement the feature
- Add tests and documentation
- Submit a pull request
Use clear, descriptive commit messages:
type: short description
Longer description if needed. Explain what and why,
not how (the code shows how).
Fixes #123
Types: fix, feat, docs, style, refactor, test, chore
Please read our Code of Conduct before contributing. We are committed to providing a welcoming and positive experience for everyone.
I typically respond to issues and PRs within 48-72 hours. For urgent bugs affecting core functionality, mention @peteonrails in your issue.
Open a discussion at https://github.com/peteonrails/voxtype/discussions
We want to hear from you! Voxtype is a young project and your feedback helps make it better.
- Something not working? If Voxtype doesn't install cleanly, doesn't work on your system, or is buggy in any way, please open an issue. I actively monitor and respond to issues.
- Like Voxtype? I don't accept donations, but if you find it useful, a star on the GitHub repository and/or a vote on the AUR package would mean a lot!
If you submit code that is incorporated into Voxtype, whether I modify it or accept it unchanged, I will credit you and list you as a contributor. If, for some reason, you do not want this, please let me know. I'll make every effort to:
- Include your commits with your github username
- Add you to the README
- Add you to the website pages
Bonus points to you if you make this easy for me by including those changes in your pull request. It's not required, but it is appreciated.
By contributing, you agree that your contributions will be licensed under the MIT License.