Skip to content

Commit

Permalink
feat: update contribution doc structure
Browse files Browse the repository at this point in the history
  • Loading branch information
trgiangdo committed May 10, 2024
1 parent 35408b2 commit 25d26ab
Showing 1 changed file with 50 additions and 48 deletions.
98 changes: 50 additions & 48 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,14 @@ Every little help and credit will always be given.
There are multiple ways to contribute to Taipy: code, but also reporting bugs, creating feature requests, helping
other users in our forums, [stack**overflow**](https://stackoverflow.com/), etc.

Today the only way to communicate with the Taipy team is by GitHub issues.
For questions, please reach out on [Discord](https://discord.com/invite/SJyz2VJGxV) or create an issue on GitHub.

## Code organisation

Taipy is organised in two main repositories:

- [taipy](https://github.com/Avaiga/taipy) is the main repository that containing the code of Taipy packages.
- [taipy-doc](https://github.com/Avaiga/taipy-doc) is the documentation repository.

## Never contributed on an open source project before ?

Expand Down Expand Up @@ -39,12 +46,49 @@ Do not hesitate to create an issue or pull request directly on the
The Taipy team manages its backlog in private. Each issue that will be done during our current sprint is
attached to the "current sprint". Please, do not work on it, the Taipy team is on it.

## Code organisation
All other issues are sorted by labels and free to be taken. If you are new to the project, you can start with the
"good first issue" or "🆘 Help wanted" label. You can also start with issue with higher priority like "Critical"
or "High". The higher the priority, the more value it will bring to the project.

Taipy is organised in two main repositories:
If you want to work on an issue, please add a comment and wait to be assigned to the to inform the community that
you are working on it.

- [taipy](https://github.com/Avaiga/taipy) is the main repository that containing the code of taipy packages.
- [taipy-doc](https://github.com/Avaiga/taipy-doc) is the documentation repository.
### Contribution workflow

1. Make your [own fork](https://help.github.com/en/github/getting-started-with-github/fork-a-repo) of the repository
target by the issue. Clone it on our local machine, then go inside the directory.

2. We are working with [Pipenv](https://github.com/pypa/pipenv) for our virtualenv.
Create a local env and install development package by running `$ pipenv install --dev`, then run tests with
`$ pipenv run pytest` to verify your setup.

3. For convention help, we provide a [pre-commit](https://pre-commit.com/hooks.html) file.
This tool will run before each commit and will automatically reformat code or raise warnings and errors based on the
code format or Python typing.
You can install and setup it up by doing:
```bash
$ pipenv install pre-commit
$ pipenv run python -m pre-commit install
```

4. Make the changes.<br/>
You may want to also add your GitHub login as a new line of the `contributors.txt` file located at the root
of this repository. We are using it to list our contributors in the Taipy documentation
(see the "Contributing > Contributors" section) and thank them.

5. Create a [pull request from your fork](https://help.github.com/en/github/collaborating-with-issues-and-pull-requests/creating-a-pull-request-from-a-fork).<br/>
Keep your pull request as __draft__ until your work is finished.
Do not hesitate to add a comment for help or questions.
Before you submit a pull request for review from your forked repo, check that it meets these guidelines:
- The code and the branch name follow the [Taipy coding style](#coding-style-and-best-practices).
- Include tests.
- Code is [rebase](http://stackoverflow.com/a/7244456/1110993).
- License is present.
- pre-commit works - without mypy error.
- GitHub's actions are passing.

6. The Taipy team will have a look at your Pull Request and will give feedback. If every requirement is valid, your
work will be added in the next release, congratulation!

## Coding style and best practices

Expand Down Expand Up @@ -77,49 +121,7 @@ Where:
- `[IssueSummary]` is a short summary of the issue topic, not including spaces, using Camel case or lower-case,
dash-separated words. This summary, with its dash (‘-’) symbol prefix, is optional.


## Contribution workflow

All other issues are sorted by labels and free to be taken. If you are new to the project, you can start with the
"good first issue" or "🆘 Help wanted" label. You can also start with issue with higher priority like "Critical"
or "High". The higher the priority, the more value it will bring to the project. If you want to work on an issue,
please add a comment and wait to be assigned to the to inform the community that you are working on it.

1. Make your [own fork](https://help.github.com/en/github/getting-started-with-github/fork-a-repo) of the repository
target by the issue. Clone it on our local machine, then go inside the directory.

2. We are working with [Pipenv](https://github.com/pypa/pipenv) for our virtualenv.
Create a local env and install development package by running `pipenv install --dev`, then run tests with `pipenv
run pytest` to verify your setup.

3. For convention help, we provide a [pre-commit](https://pre-commit.com/hooks.html) file.
This tool will run before each commit and will automatically reformat code or raise warnings and errors based on the
code format or Python typing.
You can install and setup it up by doing:
```bash
pipenv install pre-commit
pipenv run python -m pre-commit install
```

4. Make the changes.<br/>
You may want to also add your GitHub login as a new line of the `contributors.txt` file located at the root
of this repository. We are using it to list our contributors in the Taipy documentation
(see the "Contributing > Contributors" section) and thank them.

5. Create a [pull request from your fork](https://help.github.com/en/github/collaborating-with-issues-and-pull-requests/creating-a-pull-request-from-a-fork).<br/>
Keep your pull request as __draft__ until your work is finished.
Do not hesitate to add a comment for help or questions.
Before you submit a pull request for review from your forked repo, check that it meets these guidelines:
- Include tests.
- Code is [rebase](http://stackoverflow.com/a/7244456/1110993).
- License is present.
- pre-commit works - without mypy error.
- GitHub's actions are passing.

6. The taipy team will have a look at your Pull Request and will give feedback. If every requirement is valid, your
work will be added in the next release, congratulation!

### Important Notes
## Important Notes

- If your PR is not created or there is no other activity within 14 days of being assigned to the issue, a warning message will appear on the issue, and the issue will be marked as "stale".
- If your issue is marked as "stale", you will be unassigned after 14 days of inactivity.
Expand Down

0 comments on commit 25d26ab

Please sign in to comment.