Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Transition from JavaScript to TypeScript for improved maintainability #7577

Open
NalinDalal opened this issue Feb 25, 2025 · 2 comments
Open

Comments

@NalinDalal
Copy link

NalinDalal commented Feb 25, 2025

Topic

Introduce TypeSafety, Lint Checking for Organisation.
I saw that some of code was in typescript, since typescript provide compile time type checking, more strictness, command over the project, hence I propose under GSoC 2025 a project:
migrate the codebase to TypeScript

Advantages:

  • Explicit Typing, Support for OOPs
  • Makes more enhanced development since has so many features which JavaScript lacks

Also had one more idea,
Basically processing is a large codebase with vast community, so for different people contributing there should be a common way to start the application locally, hence I suggest to containerise the application via Docker.
Again looking forward for more input & feedback
@ksen0 @limzykenneth @lmccart @Qianqianye @outofambit @mcturner1995

Copy link

welcome bot commented Feb 25, 2025

Welcome! 👋 Thanks for opening your first issue here! And to ensure the community is able to respond to your issue, please make sure to fill out the inputs in the issue forms. Thank you!

@ksen0
Copy link
Contributor

ksen0 commented Feb 25, 2025

Hi @NalinDalal, thanks for your ideas!

Please note that ideas for this year's GSoC, submitted by the Processing Foundation and including p5.js, can be found here: https://github.com/processing/Processing-Foundation-GSoC

The Processing Foundation is participating as a mentor org in GSoC 2025, and if it does, please feel free to develop a proposal informed by those ideas, or post questions on the related Discourse thread. There are various developer tooling and maintenance improvement ideas on the project list there that are not related to TypeScript but are much higher priority and higher potential impact in this community, and we look forward to proposals inspired by these!

If you are very interested in TypeScript specifically, please watch out for the upcoming release of 2.0 as it has some relevant issues that are currently being worked on, such as type exporting; so you're welcome to test the beta available now or watch out for the release at the end of March.

As for Docker, there was a project a few years ago: https://github.com/toolness/p5.js-docker
However, using and developing p5.js locally already works for many people, as it is intended to be very easy to get started-with. Many p5.js users use it in online editors, so may not be Docker users, but should still be able to get started with contributing. Many people are able already to start working locally without the added requirement of Docker; are there problems you've run into that require Docker? If so, we can start discussing it and then if it makes sense transfer over to another more specific issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants