2023-10-07 12:24:44 +03:00
# Contributing to Twenty
2024-09-12 13:31:34 +03:00
Thanks for considering contributing to Twenty!
2023-10-10 13:33:17 +03:00
2024-09-12 13:31:34 +03:00
Please make sure to go through the [documentation ](https://docs.twenty.com ) before.
2023-10-07 12:24:44 +03:00
< br >
2023-10-10 13:33:17 +03:00
2024-09-12 13:31:34 +03:00
## Good first issues
2024-01-23 19:29:10 +03:00
2024-09-12 13:31:34 +03:00
Good first issues are a great way to start contributing and get familiar with the codebase. You can find them on by filtering on the [good first issue ](https://github.com/twentyhq/twenty/labels/good%20first%20issue ) label.
2024-01-23 19:29:10 +03:00
2024-09-12 13:31:34 +03:00
## Issue assignment
2023-10-07 12:24:44 +03:00
2024-09-12 13:31:34 +03:00
Having multiple contributors address the same issue can cause frustration.
2023-10-07 12:24:44 +03:00
2024-09-12 13:31:34 +03:00
To avoid conflicts, we follow these guidelines:
1. If a core team member assigned you the issue within the last three days, your PR takes priority.
2. Otherwise, the first submitted PR is prioritized.
3. For "size: long" PRs, the assignment period extends to one week.
2023-10-10 13:33:17 +03:00
2024-09-12 13:31:34 +03:00
Please ensure you're assigned to an issue before starting work.
2023-10-07 12:24:44 +03:00
2024-09-12 13:31:34 +03:00
## How to Contribute
2023-10-10 13:33:17 +03:00
2023-10-07 12:24:44 +03:00
1. **Fork the Repository:** Click on the 'Fork' button in the upper right corner of the repository's GitHub page. This will create a copy of the repository in your GitHub account.
2. **Clone the Repository:** Clone your forked repository to your local machine using `git clone` .
```shell
git clone https://github.com/yourusername/twenty.git
cd twenty
```
2024-09-12 13:31:34 +03:00
2024-07-26 09:23:58 +03:00
3. **Create a New Branch:** Create a new branch for your changes instead of using the main branch.
2023-10-07 12:24:44 +03:00
2024-07-26 09:23:58 +03:00
```shell
git checkout -b your-branch-name
```
2023-10-07 12:24:44 +03:00
2024-07-26 09:23:58 +03:00
4. **Make Changes:** Make your desired changes and ensure that your code adheres to Twenty's coding standards.
2023-10-10 13:33:17 +03:00
2024-07-26 09:23:58 +03:00
5. **Test Locally:** Test your changes locally to ensure they work as expected.
2023-10-07 12:24:44 +03:00
2024-07-26 09:23:58 +03:00
6. **Commit Changes:** Commit your changes with a clear and concise commit message.
2023-10-10 13:33:17 +03:00
2023-10-07 12:24:44 +03:00
```shell
git commit -m "Add your detailed description here"
```
2023-10-10 13:33:17 +03:00
2024-09-12 13:31:34 +03:00
7. **Push Changes:** Push your changes to your forked repository.
2023-10-07 12:24:44 +03:00
```shell
2024-07-26 09:23:58 +03:00
git push origin your-branch-name
2023-10-07 12:24:44 +03:00
```
2024-09-12 13:31:34 +03:00
8. **Create a Pull Request:** Go to the original Twenty repository and create a pull request. Please provide a detailed description of your changes. Submitting a PR means you agree to the CLA.
2023-10-07 12:24:44 +03:00
2024-09-12 13:31:34 +03:00
9. **Code Review:** Your pull request will undergo a code review.
2023-10-07 12:24:44 +03:00
2024-07-26 09:23:58 +03:00
10. **Merge:** Once approved, maintainers will merge your pull request into the main repository.
2023-10-10 13:33:17 +03:00
2023-10-07 12:24:44 +03:00
2023-10-18 19:00:52 +03:00
## Reporting Issues
2023-10-07 12:24:44 +03:00
2024-09-12 13:31:34 +03:00
If you face any issues or have suggestions, please feel free to (create an issue on Twenty's GitHub repository)[https://github.com/twentyhq/twenty/issues/new]. Please provide as much detail as possible.