We welcome and encourage contributions to WhisperKit! Whether you're fixing bugs, improving documentation, or adding new features from the roadmap, your help is appreciated. This guide will help you get started with contributing to WhisperKit.
-
Fork the Repository: Start by forking the WhisperKit repository on GitHub to your personal account.
-
Clone Your Fork: Clone your fork to your local machine to start making changes.
git clone https://github.com/[your-username]/whisperkit.git cd whisperkit
-
Install Dependencies: Use the provided
Makefile
to set up your environment. Runmake setup
to install necessary dependencies.make setup
-
Download Models: Run
make download-models
to download the required models to run and test locally.make download-model MODEL=tiny
-
Make Your Changes: Implement your changes, add new features, or fix bugs. Ensure you adhere to the existing coding style. If you're adding new features, make sure to update or add any documentation or tests as needed.
-
Build and Test: You can use the
Makefile
to build and test your changes. Runmake build
to build WhisperKit andmake test
to run tests.make build make test
You can also run and test directly from Xcode. We've provided an example app that contains various use cases, just open the
Examples/WhisperAX/WhisperAX.xcodeproj
file in Xcode and run the app.
-
Commit Your Changes: Once you're satisfied with your changes, commit them with a clear and concise commit message.
git commit -am "Add a new feature"
-
Push to Your Fork: Push your changes to your fork on GitHub.
git push origin my-branch
-
Create a Pull Request: Go to the WhisperKit repository on GitHub and create a new pull request from your fork. Ensure your pull request has a clear title and description.
-
Code Review: Wait for the maintainers to review your pull request. Be responsive to feedback and make any necessary changes.
- Code Style: Follow the existing code style in the project.
- Commit Messages: Write meaningful commit messages that clearly describe the changes.
- Documentation: Update documentation if you're adding new features or making changes that affect how users interact with WhisperKit.
- Tests: Add or update tests for new features or bug fixes.
After your pull request has been reviewed and approved, a maintainer will merge it into the main branch. Congratulations, you've successfully contributed to WhisperKit!
Thank you for making WhisperKit better for everyone! ❤️🔥