First off, thank you for considering contributing to Open Archiver! It's people like you that make open source such a great community. We welcome any and all contributions.
Not sure where to start? You can:
- Look through the open issues for bugs or feature requests.
- Check the issues labeled
good first issuefor tasks that are a good entry point into the codebase.
If you find a bug, please ensure the bug was not already reported by searching on GitHub under Issues. If you're unable to find an open issue addressing the problem, open a new one. Be sure to include a title and clear description, as much relevant information as possible, and a code sample or an executable test case demonstrating the expected behavior that is not occurring.
If you have an idea for an enhancement, please open an issue to discuss it. This allows us to coordinate our efforts and prevent duplication of work.
- Fork the repository and create your branch from
main. - Set up your development environment by following the instructions in the
README.md. - Make your changes. Ensure your code follows the project's coding style.
- Write tests for any new functionality.
- Ensure all tests pass before submitting your pull request.
- Update the documentation if your changes require it.
- Submit a pull request to the
mainbranch of the main repository. Please provide a clear description of the problem and solution. Include the relevant issue number if applicable.
By submitting a pull request to this repository, you agree to the terms and conditions of our Contributor License Agreement
This project and everyone participating in it is governed by the Open Archiver Code of Conduct. By participating, you are expected to uphold this code. Please report unacceptable behavior.
- Use the present tense ("Add feature" not "Added feature").
- Use the imperative mood ("Move cursor to..." not "Moves cursor to...").
- Limit the first line to 72 characters or less.
- Reference issues and pull requests liberally after the first line.
- Follow the existing code style.
- Use TypeScript's strict mode.
- Avoid using
anyas a type. Define clear interfaces and types in thepackages/typesdirectory.
We use Prettier for code formatting. Before you commit new code, it is necessary to check code format by running this command from the root folder:
pnpm run lint
If there are any format issues, you can use the following command to fix them
pnpm run format