Thank you for considering contributing to Iconsans! We appreciate your interest in helping us make this project better. This document provides guidelines for contributing to the project. Please take a moment to review these guidelines before getting started.
There are several ways you can contribute to Iconsans:
- Report issues: If you encounter a bug or have a suggestion for improvement, please let us know by opening an issue.
- Submit feature requests: If you have an idea for a new feature or enhancement, you can open a feature request issue.
- Submit pull requests: If you are a developer and would like to contribute code to the project, you can submit a pull request with your changes.
If you find a bug or experience any issues with Iconsans, please help us by reporting them. When reporting issues, please provide as much detail as possible, including:
- A clear and descriptive title
- Steps to reproduce the issue
- Expected behavior
- Actual behavior
- Any relevant error messages or screenshots
You can report issues by opening a new issue on the project's GitHub repository.
If you have an idea for a new feature or an improvement to an existing one, you can submit a feature request. Before submitting a feature request, please check if a similar request already exists. If it does, you can add your comments and reactions to the existing request. Otherwise, you can open a new feature request issue and provide a detailed description of the feature you would like to see.
If you are a developer and want to contribute code to Iconsans, you can submit a pull request. Before starting any work, please check if there is an open issue related to your proposed change. If there isn't, you can open a new issue to discuss your proposed changes with the project maintainers.
To submit a pull request:
- Find an issue that you are interested in addressing or a feature that you would like to add.
- Fork the repository associated with the issue to your local GitHub organization. This means that you will have a copy of the repository under
your-GitHub-username/repository-name
. - Clone the repository to your local machine using
git clone https://github.com/github-username/repository-name.git
. - Use
yarn bootstrap
to install dependecies and runyarn prepare
to install husky dependecies. - Create a new branch for your fix using
git checkout -b branch-name-here
. - Make the appropriate changes for the issue you are trying to address or the feature that you want to add.
- Use
git add insert-paths-of-changed-files-here
to add the file contents of the changed files to the "snapshot" git uses to manage the state of the project, also known as the index. - Use
git commit
to store the contents of the index with a descriptive message. Use conventional commits to create a nice message.- For changes related to Vue package:
git commit -m "feat(vue): your commit meesage"
- For fixes related to React package:
git commit -m "fix(react): your commit meesage"
- For chore changes related to the site:
git commit -m "chore(site): your commit meesage"
- For changes related to Vue package:
- Push the changes to the remote repository using
git push origin branch-name-here
. - Submit a pull request to the upstream repository.
- Title the pull request with a short description of the changes made and the issue or bug number associated with your change. For example, you can title an issue like so
"Added more log outputting to resolve #4352"
. - In the description of the pull request, explain the changes that you made, any issues you think exist with the pull request you made, and any questions you have for the maintainer. It's OK if your pull request is not perfect (no pull request is), the reviewer will be able to help you fix any problems and improve it!
- Wait for the pull request to be reviewed by a maintainer.
- Make changes to the pull request if the reviewing maintainer recommends them.
- Celebrate your success after your pull request is merged! 🎉 🎉
Once your pull request is open, it will be reviewed by the project maintainers. They may provide feedback or request further changes before merging your code.
If you have any questions or need further assistance, you can reach out to us via the following channels:
- Project Repository: https://github.com/mortezasabihi/iconsans
- Project Website: https://mortezasabihi.github.io/iconsans/
- Email: [email protected]
By contributing to Iconsans, you agree that your contributions will be licensed under the project's license. Details about the license can be found in the project repository or accompanying documentation.