Skip to content

Contributing

Thank you for wanting to contribute to the PyScript project!

Code of conduct

The PyScript Code of Conduct governs the project and everyone participating in it. By participating, you are expected to uphold this code. Please report unacceptable behavior to the maintainers or administrators as described in that document.

Ways to contribute

Report bugs

Bugs are tracked on the project issues page.

Check first

Please check your bug has not already been reported by someone else by searching the existing issues before filing a new one. Once your issue is filed, it will be triaged by another contributor or maintainer. If there are questions raised about your issue, please respond promptly.

  • Use a clear and descriptive title.
  • Describe the starting context and specific steps needed to reproduce the problem you have observed. Some of these steps may not be obvious, so please as much detail as possible.
  • Explain the behaviour you observed, the behaviour you expected, and why this difference is problematic.
  • Include screenshots if they help make the bug clearer.
  • Include commented example code if that will help recreate the bug.

Report security issues

If it is not appropriate to submit a security issue using the above process, please e-mail us at [email protected].

Ask questions

If you have questions about the project, using PyScript, or anything else, please ask in the project's discord server.

Create resources

Folks make all sorts of wonderful things with PyScript.

If you have an interesting project, a cool hack, or an innovative way to implement a new capability or feature, please share your work and tell us about it so we can celebrate and amplify your contribution.

  • Show off your creation at our fortnightly PyScript FUN community call on discord.
  • Write up your creation in a blog post.
  • Share it on social media.
  • Create a demo video.
  • Propose a talk about it at a community event.
  • Demonstrate it as a lightning talk at a conference.

Please reach out to us if you'd like advice and feedback.

Participate

As an open source project, PyScript has community at its core. In addition to the ways to engage already outlined, you could join our live community calls.

  • PyScript Community Call
  • weekly on Tuesdays. A coordination call for anyone participating in the PyScript project.
  • Community Engagement Call
  • weekly on Wednesdays. A non-technical meeting where we coordinate how the PyScript project engages with, nourishes and grows our wonderful community.
  • PyScript FUN
  • held every two weeks on a Thursday, this call is an informal, supportive and often humorous "show and tell" of community created projects, hacks, feedback and plugins.

Announcement of connection details is made via the PyScript discord server.

Technical contributions

In addition to working with PyScript, if you would like to contribute to PyScript itself, the following advice should be followed.

Places to start

If you're not sure where to begin, we have some suggestions:

  • Read over our documentation. Are there things missing, or could they be clearer? Make edits/changes/additions to those documents.
  • Review the open issues. Are they clear? Can you reproduce them? You can add comments, clarifications, or additions to those issues. If you think you have an idea of how to address the issue, submit a fix!
  • Look over the open pull requests. Do you have comments or suggestions for the proposed changes? Add them.
  • Check out the examples. Is there a use case that would be good to have sample code for? Create an example for it.

Set up your development environment

We assume you are familiar with core development practices such as using a code editor, writing Python and/or JavaScript and working with tools and services such as GIT and GitHub.

git clone https://github.com/<your username>/pyscript
  • Add our original PyScript repository as your upstream.
git remote add upstream https://github.com/pyscript/pyscript.git
  • This allows you to pull the latest changes from the main project.
git pull upstream main
  • Contribute changes using the GitHub flow model of coding collaboration.

License terms for contributions

PyScrcipt welcomes contributions, suggestions, and feedback. All contributions, suggestions, and feedback you submitted are accepted under the Apache 2.0 license. You represent that if you do not own copyright in the code that you have the authority to submit it under the Apache 2.0 license. All feedback, suggestions, or contributions are not confidential.

Becoming a maintainer

Contributors are invited to be maintainers of the project by demonstrating good decision making in their contributions, a commitment to the goals of the project, and consistent adherence to the code of conduct. New maintainers are invited by a 3/4 vote of the existing maintainers.

Trademarks

The Project abides by the Organization's trademark policy.