This License Agreement ("Agreement") is made between Quinton Ashley, the sole copyright owner of p5play ("Licensor") and an individual, organization, or company ("Licensee") that is using p5play for free.
For commercial game development, see the p5play Professional License.
For educational use, see the p5play Educational License.
The Licensee is granted the right to use the p5play software library ("Content") for personal use, subject to the following restrictions.
Any shared work that uses the Content must be open source. Source code needs to be:
- Human readable, not minified or obfuscated, but in the preferred form for making modifications
- Publicly available for free
- Licensed as AGPL, GPL, CC BY-SA, CC BY, ISC, MIT, or CC0 (public domain)
The Licensee must also include a copy of this p5play License alongside the Content in the open source work.
These requirements apply to the entirety of work that uses the Content, not just p5play-related sections. It is the Licensee's responsibility to ensure that they understand the consequences of licensing their work as open source.
The Licensee is permitted to distribute their programs in a compiled or minified form only if the source code is made available as a prominent option alongside it.
If a web server/client-side web app ("Website") uses the Content as part of the Website's code or in a work generated by the Website's code, the entire codebase for the Website must be open source. Yet, if the Website merely hosts user generated content that uses p5play, only the user is required to make their own content open source.
The Licensee is also permitted to use the Content privately in projects that are not made available to others. Yet, public or limited distribution of closed source projects using the Content is prohibited.
Any modification, enhancement, or adaptation of the Content ("Derivative Work") shall be owned by the Licensor. Derivative Works must be created for the sole purpose of improving the Content, for the benefit of all users of p5play.
By creating a Derivative Work, the Licensee hereby:
- Assigns all rights, title, and interest in the Derivative Work to the Licensor
- Waives any moral rights in the Derivative Work
- Grants the Licensor exclusive rights to use, modify, and distribute the Derivative Work
- Agrees to execute any documents necessary to perfect such rights
The Licensee must notify and distribute Derivative Works to the Licensor via GitHub PR, email ([email protected]), or Discord post/message and not by any other means.
The Licensee may host verbatim, unmodified copies of the Content only. "Verbatim copies" means exact duplicates of the Content as provided by the Licensor, without changes. The Licensee may not sell or sublicense the Content.
The Licensee is expressly forbidden from using the Content for commercial purposes.
- use must not involve an exchange of money
- use must not promote a business entity, including non-profit organizations
- use must not directly or indirectly result in financial gain
The Licensee must purchase a p5play Professional License subscription to use the Content commercially.
Under fair use, the Licensee may produce educational content, such as YouTube tutorials, that explains and showcases use of the Content in a fixed media format, which does not enable direct interaction with the Content.
The Content can also be used in interactive art that is educational in nature, but the topics covered must not be related to computer programming or game development. For example, a game that teaches players how to cook is permitted.
Educational Use of the Content, such as in class instruction or coursework in which the Content is used directly by teachers or students, is prohibited under this Agreement.
Educational Use of the Content requires the p5play Educational License, even if the Content is used indirectly through a third-party provider.
The Licensee is expressly forbidden from using the Content in projects that are directly endorsed by military organizations or military contractors.
The Licensee must publicly display appropriate credit to the Licensor for the Content, but not in any way that suggests the Licensor endorses the Licensee or the Licensee's use, unless the Licensor has given prior written consent.
Use of the "made with p5play" Loading Screen is required for all published work that uses p5play, unless the work is published on an online code editing platform or other web app that was approved by the Licensor to be exempt from this requirement, in which case the loading screen will not appear. Attribution can then be made at the top of the primary script file or in a README file. The following is an example of acceptable attribution:
/**
* Made with p5play!
* https://p5play.org
*/
Any individual, organization, or company that is not paying licensing fees for their use of p5play is required to comply with this Agreement. Use of p5play constitutes acceptance of this Agreement.
Licensees optionally consent to p5play using Google Analytics to track how they use p5play. To revoke this consent, you can use a browser extension to block Google Analytics or set window._p5play_gtagged = false;
before loading p5play.
The Licensee is also granted access to the "Learn p5play" interactive textbook located at p5play.org/learn, for personal learning and evaluation only, in compliance with the p5play.org Terms of Service.
The Content is provided "as is." The Licensor makes no warranties, express or implied, including without limitation any implied warranty of merchantability or fitness for a particular purpose, concerning the Content.
If the Licensee has any issues with the Content, they must contact the Licensor.
If the Licensee is not satisfied with the Content, it is their responsibility to discontinue use of the Content.
The Licensor shall not be liable for any damages suffered by the Licensee resulting from the use or inability to use the Content.
Licensees must comply with all applicable laws and regulations when using p5play. It is illegal to create content that infringes on the rights of others. Licensees are fully liable for any content they create with p5play.
Termination of the Agreement will occur if the Licensee fails to comply with any term(s) of this Agreement. Therefore, termination can occur automatically, without notice from the Licensor.
Note that the Licensor reserves the right to change the cost of renewing this license at any time. Any lapse in licensing payments will result in the immediate termination of this Agreement.
This Agreement constitutes the entire agreement between the parties and supersedes all prior understandings and agreements, whether written or oral, relating to the subject matter of this Agreement.
This Agreement can be amended by the Licensor at any time. To the extent possible, if any provision of this Public License is deemed unenforceable, it shall be automatically reformed to the minimum extent necessary to make it enforceable. If the provision cannot be reformed, it shall be severed from this Public License without affecting the enforceability of the remaining terms and conditions.