intel / AI-Playground

AI PC starter app for doing AI image creation, image stylizing, and chatbot on a PC powered by an Intel® Arc™ GPU.
MIT License
155 stars 26 forks source link

Improving Contributor experience #3

Closed Vipitis closed 1 month ago

Vipitis commented 1 month ago

Hey, I am opening this issue to discuss ways to improve the contribution guidelines for third party contributors.

Currently CONTRIBUTION.md does only contain a requirement about the CLA. I don't believe that is sufficient. It would be great to have at least two additional chapters:

  1. Goal of the project and guidelines for what contributions are welcome. For example specify your goals for the project and perhaps even provide a list of open issues. Consider setting up issue templates too for Feature Requests, Bug reports, etc.
  2. Technical documentation for contributors. The README.md has build instructions but that's about it. It would be great to state your choices on code style and format, testing, documentation, git merging. Please consider setting up CI to run the linting and testing. This section can also contain a small GitHub tutorial on how to fork, branch and open a PR.

I can share some good references to consider. Please let me know what you think. I can also help to setup some CI - but contributions will be easier if you improve the above guidelines.

qiacheng commented 1 month ago

Thanks Vipitis for the recommendation. Yes please share some references with us. We are looking forward to community dev contribution and help refining the user experience for AI Playground.

Vipitis commented 1 month ago

okay, here are some references:

  1. Contribution guidelines for openvino_notebooks are very well done conceptionally to explain the scope and goal.
  2. Technical explanation by sklearn does a good job to explain how to use GitHub to make a good PR. I hope this are good inspiration to writing your Contributor guidelines. Layout some clear directions to help (first time) contributors for this open source project.

For linting and formatting I can recommend ruff which is extremely fast and can easily be setup for CI. At least for the python side, I got no experience with js.

Nuullll commented 1 month ago

Feel free to create pull requests to help improve contributing docs. Formatting and linting feature is tracked by #38