Fetching the latest programs, projects, and workspace data.

To empower all people to learn to program
Showing 5 of 92 projects. Click any project card for scope, mentors, and proposal studio.
Mentors: Student: prjctimg
An offline-first gamified learning mobile app for p5.js that teaches users how to use the library’s symbols (functions, constants, classes, etc.) through small exercises. Inspired by Google's Grasshopper app.
Mentors: Student: sam heckle
This project will focus on L5: expanding on existing L5 tutorials, documentation, and building integrations with existing editors so that creatives can seamlessly start building in L5. The focus of the documentation updates will include updating community statements (such as principles of permacomputing), adding clarity to first-time start-up and examples, creating and fleshing out new tutorials, ideally helping both those new to Lua or new to coding.
Mentors: Student: vansh kabra
This project aims to add native SVG import and export capabilities to p5.js through enhancements to the p5.Shape system. Currently, p5.js only supports raster exports which limits professional workflows for artists and educators who require vector outputs. The project will first extend the Shape system by adding ArcSegment and EllipseSegment primitives to enable structured geometry recording. Then an SVG export add-on will be developed using a visitor pattern to convert recorded primitives into clean SVG paths with transform support. Key deliverables include a shape recording API, SVG export via saveSVG(), basic SVG import support, documentation, and tests. This will improve interoperability of p5.js with design tools and vector workflows while maintaining backwards compatibility.
Mentors: Student: Nityamㅤ
Currently, p5.js has a frustrating limitation for 3D artists: it flattens every imported model into a single shape that can only hold one texture. If you export a complex character from Blender or Maya with different materials for things like skin, clothing, and eyes, p5.js silently discards that information during the import process. This leaves creators with a flat, grey model instead of the detailed, textured work they actually designed. This project fixes the problem at its core by updating the library to recognize and render multi-material models automatically.
Mentors: Student: Aashish Panthi
This project is an extension of the Translation Tracker from the GSoC 2025 to support community translation of the p5.js reference documentation. I'm solving the problem and the gap in the current translation tracker infrastructure. P5.js documentation currently has five languages (English, Spanish, Simplified Chinese, Korean, and Hindi). P5.js is growing, and we need an infrastructure to support the translations. The goal is to improve/add GitHub Actions and workflows that assist human translation by volunteer translators, not to support the AI agents' translation.