From 4bb86cfb19f0fe279bfb5751afd1c75d67c36d3f Mon Sep 17 00:00:00 2001 From: Aditya Ray <96347576+adi-ray@users.noreply.github.com> Date: Sat, 23 Aug 2025 13:35:02 +0530 Subject: [PATCH 1/4] docs: Update reference generation instructions to p5.js 2.0 fork workflow --- .../en/contributing_to_the_p5js_reference.mdx | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/src/content/contributor-docs/en/contributing_to_the_p5js_reference.mdx b/src/content/contributor-docs/en/contributing_to_the_p5js_reference.mdx index 58cfbc2c44..09d4deb903 100644 --- a/src/content/contributor-docs/en/contributing_to_the_p5js_reference.mdx +++ b/src/content/contributor-docs/en/contributing_to_the_p5js_reference.mdx @@ -380,22 +380,22 @@ Class constructors are defined with the `@class` tag and the `@constructor` tag. The p5.js repository is set up so that you can generate and preview the reference without needing to build and run the p5.js website as well. -* The main command to generate the reference from the reference comments in the source code is to run the following command. +To do so, make sure you have committed your changes to a branch of your fork of p5.js. + +* Then, in the p5.js-website repo, run the following command, using the URL of your fork of p5 before the `#`, and the name of your branch after the `#`: ``` -npm run docs +npm run custom:dev https://github.com/yourUsername/p5.js.git#yourBranch ``` -This will generate the necessary preview files and the main `docs/reference/data.json` file, which is the same file (after minification) that will be used to render the reference page on the website. +This will build the reference from your branch and start a development preview of the website. A URL will be logged in the console that you can go to in your browser to test out your changes. -* For continuous work on the reference, you can run the following command. +* When you're done, you can run this command to reset your changes: ``` -npm run docs:dev +npm run custom:cleanup ``` -This will launch a live preview of the rendered reference that will update each time you make changes (you will need to refresh the page after making changes to see them appear). This is useful, especially for previewing example code running in the browser. - * The main template files are stored in the `docs/` folder and, in most cases, you should not make changes directly to files in this folder, except to add new asset files in the `docs/yuidoc-p5-theme/assets` folder. ## Next steps From cfc2db38efefa2cab0b39d818339ec2ec97d333c Mon Sep 17 00:00:00 2001 From: Aditya Ray <96347576+adi-ray@users.noreply.github.com> Date: Thu, 4 Sep 2025 15:04:39 +0530 Subject: [PATCH 2/4] docs: Add npm install step --- .../en/contributing_to_the_p5js_reference.mdx | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/content/contributor-docs/en/contributing_to_the_p5js_reference.mdx b/src/content/contributor-docs/en/contributing_to_the_p5js_reference.mdx index 09d4deb903..947f9f1c48 100644 --- a/src/content/contributor-docs/en/contributing_to_the_p5js_reference.mdx +++ b/src/content/contributor-docs/en/contributing_to_the_p5js_reference.mdx @@ -382,6 +382,12 @@ The p5.js repository is set up so that you can generate and preview the referenc To do so, make sure you have committed your changes to a branch of your fork of p5.js. +* First, ensure you have the necessary dependencies installed in the p5.js-website repository: + +``` +npm install +``` + * Then, in the p5.js-website repo, run the following command, using the URL of your fork of p5 before the `#`, and the name of your branch after the `#`: ``` From 2e772b9ae159f25b897273d9a9e62470ffffaa7a Mon Sep 17 00:00:00 2001 From: Aditya Ray <96347576+adi-ray@users.noreply.github.com> Date: Thu, 4 Sep 2025 15:24:30 +0530 Subject: [PATCH 3/4] docs: Clarify branch compatibility --- .../en/contributing_to_the_p5js_reference.mdx | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/content/contributor-docs/en/contributing_to_the_p5js_reference.mdx b/src/content/contributor-docs/en/contributing_to_the_p5js_reference.mdx index 947f9f1c48..9becd39a6d 100644 --- a/src/content/contributor-docs/en/contributing_to_the_p5js_reference.mdx +++ b/src/content/contributor-docs/en/contributing_to_the_p5js_reference.mdx @@ -380,7 +380,12 @@ Class constructors are defined with the `@class` tag and the `@constructor` tag. The p5.js repository is set up so that you can generate and preview the reference without needing to build and run the p5.js website as well. -To do so, make sure you have committed your changes to a branch of your fork of p5.js. +To do so, make sure you have committed and pushed your changes to a branch of your fork of p5.js. + +**Important:** Make sure you're working with compatible branches: + +- Use the `2.0` branch of p5.js-website with the `dev-2.0` branch of p5.js +- Use the `main` branch of p5.js-website with the `main` branch of p5.js * First, ensure you have the necessary dependencies installed in the p5.js-website repository: From d35a095df506c199d83921e2a24701566244b2fc Mon Sep 17 00:00:00 2001 From: Aditya Ray <96347576+adi-ray@users.noreply.github.com> Date: Mon, 8 Sep 2025 01:36:46 +0530 Subject: [PATCH 4/4] docs: Add terminal output ss --- .../en/contributing_to_the_p5js_reference.mdx | 3 +++ .../images/custom-dev-terminal-output.png | Bin 0 -> 37559 bytes 2 files changed, 3 insertions(+) create mode 100644 src/content/contributor-docs/images/custom-dev-terminal-output.png diff --git a/src/content/contributor-docs/en/contributing_to_the_p5js_reference.mdx b/src/content/contributor-docs/en/contributing_to_the_p5js_reference.mdx index 9becd39a6d..acfbcfb45f 100644 --- a/src/content/contributor-docs/en/contributing_to_the_p5js_reference.mdx +++ b/src/content/contributor-docs/en/contributing_to_the_p5js_reference.mdx @@ -401,6 +401,9 @@ npm run custom:dev https://github.com/yourUsername/p5.js.git#yourBranch This will build the reference from your branch and start a development preview of the website. A URL will be logged in the console that you can go to in your browser to test out your changes. +If everything is working correctly, your terminal output should look similar to this: +![Terminal output showing successful npm run custom:dev execution](src/content/contributor-docs/images/custom-dev-terminal-output.png) + * When you're done, you can run this command to reset your changes: ``` diff --git a/src/content/contributor-docs/images/custom-dev-terminal-output.png b/src/content/contributor-docs/images/custom-dev-terminal-output.png new file mode 100644 index 0000000000000000000000000000000000000000..070cd2bfd19a4bd494ddd7fdd992c7eb458285c1 GIT binary patch literal 37559 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 F{$D7y2gCpX literal 0 HcmV?d00001