Updating the p5.js library to ES6 for GSoC 2019

Hey everyone!

I am looking to work on the project for updating the p5,js library to ES6 for GSoC 2019. I have gone through the project description and the associated issues on GitHub. It seems to be an important part of the road map for 1.0 release and thus think this is a good and high priority project that I could work on.

It would be great if someone could guide me as to how I can start contributing to this project, to get a better understanding of the code base. I could help solve some solve issues or start planning according to these steps: https://github.com/processing/p5.js/blob/master/developer_docs/roadmap.md#es6-migration.

Also I would appreciate if I could get in touch with a mentor to further delineate the project details, so that I can draft my proposal accordingly.


Hi JaiKotia,

Here are the developer docs that explain how to start contributing (start with the readme). The project idea itself is relatively straightforward, we want to update all of the p5.js library, currently written in ES5, to ES6. Here is one article that summarizes the difference between ES5 and ES6 and an overview of ES6 features. We don’t assign mentors until after projects are selected, so for now, it’s best to discuss your project questions with the community at large.


Hey Lauren,

Thanks for the response. I will go through the docs and understand the current p5.js code structure. I have already been reading up about how to update ES5 code to ES6. I will next look to focus on a feature wise breakdown of the ES6 features so that we can update the code base systematically.

At the end of that I hope to have a streamlined process on the code conversion, so that when I start altering the ES5 code to ES6, it is done in a standardised way, without disturbing any functionality.

I will keep the community posted on this, and I hope to work with you over the summer!

Kind Regards.

1 Like

Hello, I was also planning on submitting an application for the ES6 update for GSoC. @lmccart do you think there will be more than 1 proposal selected for this work? It does seem like a lot to go through the whole library. Also, what kind of skill levels or previous projects will be taken into consideration since this was tagged as intermediate to advanced difficulty level?

@diana We haven’t decided yet whether this will be one project or multiple. I think it will depend on the proposals received. We would like to see experience with JS programming and version control software to be sure the student has sufficient experience to complete this project.


Hi @diana,

Thanks for your interest! After some further thought, we’ve decided to remove the ES6 migration as a project idea. We felt that the scope of it wasn’t right for Google Summer of Code, and the nature of the task might not provide enough opportunity for a student to learn through doing, and feel fully empowered to make their own decisions in their project.

I apologize for any confusion this may cause or time already spent on this. You are of course welcome to still propose this project or any other idea not on the list, but we will be hesitant to make this into a GSOC project for the reasons described above. Hopefully you can find another project on the list that interests you.