| title | Contributing |
|---|---|
| description | Help improve Fish Audio and contribute to our open source projects. |
| icon | code-pull-request |
import { AudioTranscript } from '/snippets/audio-transcript.jsx';
{/* speak-mintlify-hash: cdb589f221b74134788267368baaa9b7d15416a5af87eebf7141010c7ed8320f */} <AudioTranscript voices={[ { "id": "8ef4a238714b45718ce04243307c57a7", "name": "E-girl", "url": "https://pub-b995142090474379a930b856ab79b4d4.r2.dev/audio/contributing/8ef4a238714b45718ce04243307c57a7.mp3" }, { "id": "802e3bc2b27e49c2995d23ef70e6ac89", "name": "Energetic Male", "url": "https://pub-b995142090474379a930b856ab79b4d4.r2.dev/audio/contributing/802e3bc2b27e49c2995d23ef70e6ac89.mp3" }, { "id": "933563129e564b19a115bedd57b7406a", "name": "Sarah", "url": "https://pub-b995142090474379a930b856ab79b4d4.r2.dev/audio/contributing/933563129e564b19a115bedd57b7406a.mp3" }, { "id": "bf322df2096a46f18c579d0baa36f41d", "name": "Adrian", "url": "https://pub-b995142090474379a930b856ab79b4d4.r2.dev/audio/contributing/bf322df2096a46f18c579d0baa36f41d.mp3" }, { "id": "b347db033a6549378b48d00acb0d06cd", "name": "Selene", "url": "https://pub-b995142090474379a930b856ab79b4d4.r2.dev/audio/contributing/b347db033a6549378b48d00acb0d06cd.mp3" }, { "id": "536d3a5e000945adb7038665781a4aca", "name": "Ethan", "url": "https://pub-b995142090474379a930b856ab79b4d4.r2.dev/audio/contributing/536d3a5e000945adb7038665781a4aca.mp3" } ]} />
First off, thanks for taking the time to contribute!
All types of contributions are encouraged and valued. See the sections below for different ways to help and details about how this project handles them. Please make sure to read the relevant section before making your contribution. It will make it a lot easier for us maintainers and smooth out the experience for all involved. The community looks forward to your contributions.
If you like the project but don't have time to contribute, there are other easy ways to support Fish Audio: - Star our repositories - Tweet about it - Reference Fish Audio in your project's readme - Mention the project at local meetups and tell your friends/colleaguesThis project and everyone participating in it is governed by the Fish Audio Code of Conduct. By participating, you are expected to uphold this code. Please report unacceptable behavior to our community team.
Before you ask a question, please read the available Documentation.
It's best to search for existing Issues that might help you. In case you have found a suitable issue and still need clarification, you can write your question in that issue. It is also advisable to search the internet for answers first.
If you still need to ask a question:
- Open an Issue in the relevant repository
- Provide as much context as you can about what you're running into
- Provide project and platform versions (Node.js, Python, OS, etc.), depending on what seems relevant
We will take care of the issue as soon as possible.
**Legal Notice**When contributing to this project, you must agree that you have authored 100% of the content, that you have the necessary rights to the content, and that the content you contribute may be provided under the project license.
A good bug report shouldn't leave others needing to chase you up for more information. Please investigate carefully, collect information, and describe the issue in detail:
- Make sure you are using the latest version
- Determine if your bug is really a bug and not an error on your side (e.g., incompatible environment components/versions)
- Check if there is already a bug report for your issue in the bug tracker
- Search the internet (including Stack Overflow) to see if others have discussed the issue
- Collect information about the bug:
- Stack trace (Traceback)
- OS, Platform and Version (Windows, Linux, macOS, x86, ARM)
- Version of the interpreter, compiler, SDK, runtime environment, package manager
- Your input and the output
- Can you reliably reproduce the issue? Can you reproduce it with older versions?
We use GitHub issues to track bugs and errors. If you run into an issue:
- Open an Issue in the relevant repository
- Explain the behavior you would expect and the actual behavior
- Provide as much context as possible and describe the reproduction steps that someone else can follow to recreate the issue on their own
- Provide the information you collected in the previous section
Once filed:
- The project team will label the issue accordingly
- A team member will try to reproduce the issue with your provided steps
- If there are no reproduction steps, the team will ask for them and mark the issue as
needs-repro - If the team reproduces the issue, it will be marked
needs-fixand left to be implemented
This section guides you through submitting an enhancement suggestion for Fish Audio, including completely new features and minor improvements to existing functionality.
- Make sure you are using the latest version
- Read the documentation carefully to see if the functionality already exists
- Perform a search to see if the enhancement has already been suggested
- Consider whether your idea fits with the scope and aims of the project
Enhancement suggestions are tracked as GitHub issues:
- Use a clear and descriptive title for the issue
- Provide a step-by-step description of the suggested enhancement in as many details as possible
- Describe the current behavior and explain which behavior you expected to see instead and why
- Include screenshots or screen recordings if applicable
- Explain why this enhancement would be useful to most Fish Audio users
We welcome first-time contributors! Here's how to get started:
- Fork the repository you want to contribute to
- Clone your fork locally
- Create a new branch for your changes
- Make your changes following our styleguides
- Test your changes thoroughly
- Commit your changes with clear commit messages
- Push to your fork and submit a pull request
Documentation improvements are always welcome! This includes:
- Fixing typos and grammatical errors
- Adding missing information or clarifications
- Improving code examples
- Adding new guides or tutorials
- Translating documentation
See our documentation repository to get started.
- Use clear and meaningful commit messages
- Start with a verb in the present tense (e.g., "Add", "Fix", "Update", "Remove")
- Keep the first line under 72 characters
- Reference issues and pull requests when relevant
- Provide additional context in the commit body if needed
Example:
Add voice cloning support for Python SDK
- Implement VoiceCloneClient class
- Add comprehensive error handling
- Include usage examples in docstrings
Closes #123
- Follow the existing code style in each repository
- Use meaningful variable and function names
- Add comments for complex logic
- Write tests for new features
- Ensure all tests pass before submitting
This contribution guide is based on the contributing.md generator. Fish Audio is committed to open source and welcomes contributions from developers worldwide.