p5.js-web-editor icon indicating copy to clipboard operation
p5.js-web-editor copied to clipboard

Feature request: API to create a sketch and send code for it

Open terabyte128 opened this issue 7 years ago • 4 comments

New feature details:

I am working on a project that helps transpile Processing Java code to p5.js. It would be awesome if there were a way to allow a user to click a button that redirects them to this site with their code already pasted into the editor. Perhaps making a request to a URL with the body as their project code could create a new project and redirect them to it, or something like that.

(If I have time, I can work on this feature myself -- right now I'm still finishing up the other project, so I thought I'd toss it out here to gauge interest!)

terabyte128 avatar Jul 08 '18 06:07 terabyte128

I think this is a great idea! In general I'm very supportive of ideas that integrate the web editor into other workflows.

This is somewhat related to #542, but definitely not the same.

catarak avatar Jul 12 '18 18:07 catarak

hello @terabyte128
I created a Python script for a similar task, however it doesn't take of everything - you still need to review the generated code. How is your tool implemented, and do you already have something to show? What requires a lot of work in my case is when the PDE sketch used Classes (in tabs), or imports other Java packages.

Here is my gist with the script as it is now. https://gist.github.com/haschdl/3230f814566901e68e56a4d07cda8700

haschdl avatar Nov 05 '19 13:11 haschdl

Hi @haschdl, I took the somewhat more complex route of actually parsing the Java code into a syntax tree and making visitor passes. Right now it also doesn’t handle those more complex cases but may be more easily extensible. We’ve used it in a course I taught last winter and it worked well for beginner programmers. See: https://github.com/terabyte128/pde2js

terabyte128 avatar Nov 05 '19 16:11 terabyte128

@catarak Hi , can I Still work on this Issue

SushantBansal-tech avatar Mar 02 '25 13:03 SushantBansal-tech