p5.js Libraries
March 3, 2025 ยท View on GitHub
p5.js welcomes libraries contributed by others! Check out the libraries tutorial for more specifics about how to create one. If you have created a library and would like to have it included in the list, follow the instructions below!
- Fork the repo
- Add a file to the
src/content/libraries/enfolder namedyourLibraryName.yaml(or consider copying an existing library as a starting point) - Inside it, add the following content:
name: The name of the librarycategory: A category that you think best fits your library. Your choices include:drawing,color,ui,math,physics,algorithms,3d,ai-ml-cv,animation,shaders,language,hardware,sound,data,teaching,networking,export, orutils.description: A one-sentence description of the libraryauthor: An object containingname, your name, andurl, an optional link to your website. If there are multiple authors, use an array of author objects.sourceUrl: A link to the library's source code (e.g. its repo on GitHub or GitLab)- (Optional)
websiteUrl: A link to a website for the library - (Optional)
npm: If applicable, the package name for the library on npm - (Optional)
npmFilePath: A path like'dist/library.min.js'if a specific file in the library should be used from npm. You can test this out by going tohttps://cdn.jsdelivr.net/npm/packageName-- if that doesn't work, tryhttps://cdn.jsdelivr.net/npm/packageName/path/to/file.jsand put the path you added into this property featuredImage: The relative path to the preview thumbnail for the library.featuredImageAlt: a short description of the contents of the thumbnail for screen readers- (Optional)
license: A string describing the software license of the library. This may be omitted if your package is on npm and has license info there
- Add a high-res colored image of 1500x1000px of your library into
src/content/libraries/images - Submit a pull request and we'll review your submission
We add libraries that are open-source, include some documentation and examples, and follow our code of conduct. This directory targets beginner users, so we aim to ensure users have a smooth experience getting started with any library linked to.
If you have any questions, feel free to open an issue or create a work-in-progress PR and ask us anything!