Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
2036 commits
Select commit Hold shift + click to select a range
e282432
Automatically remove DOM event listener on sketch removal
limzykenneth Jun 29, 2025
f7150c2
Switch deprecated interface to new supported one
limzykenneth Jun 29, 2025
df4c546
Refactor fn.noise() to use early return guard for cleaner structure
LalitNarayanYadav Jul 1, 2025
604c2dd
chipping away at DOD approach.
lukeplowden Jul 1, 2025
63375bb
Merge pull request #7827 from processing/updating-contributor-docs-fo…
perminder-17 Jul 4, 2025
4f81bdb
Skip adding degenerate faces in textToModel
davepagurek Jul 4, 2025
8950817
nested ifs
lukeplowden Jul 5, 2025
0cd9448
Bridge p5.js noise with GLSL noise in p5.strands
LalitNarayanYadav Jul 5, 2025
fd13238
Add noiseGLSL.glsl with MIT-licensed 2D noise for p5.strands
LalitNarayanYadav Jul 5, 2025
f6369e7
if/else semi working
lukeplowden Jul 7, 2025
3333411
Merge pull request #7951 from processing/fix/textToModel-warnings
perminder-17 Jul 7, 2025
aa4de7f
Wrap source string in brackets
nking07049925 Jul 7, 2025
547bc8b
Add unit test for anonymous function modify hook
nking07049925 Jul 7, 2025
848e619
Await all lifecycle hook functions in parallel
limzykenneth Jul 8, 2025
27ebbe3
Update src/webgl/shaders/functions/noiseGLSL.glsl
perminder-17 Jul 8, 2025
f3ab0ce
Merge pull request #7921 from LalitNarayanYadav/patch-8
perminder-17 Jul 8, 2025
e8cd05c
fixing as per suggestions.
perminder-17 Jul 8, 2025
06cf619
docs: clarify combineColors and getPointSize documentation per mainta…
Abhayaj247 Jul 9, 2025
dcc31b7
Add comment with an explanation
nking07049925 Jul 9, 2025
98fc10c
Fix p5.strands uniform calls, add instance mode construct
davepagurek Jul 9, 2025
e4ad5ee
Merge pull request #7956 from nking07049925/7955_strands_AnonymousFun…
davepagurek Jul 9, 2025
a355416
change if/elseif/else api to be chainable and functional (return assi…
lukeplowden Jul 9, 2025
1d01ca8
docs: remove getPointSize documentation as it is not present in publi…
Abhayaj247 Jul 10, 2025
f300fcf
Enhance strands noise() to support noise(x, y) and add fractal octaves
LalitNarayanYadav Jul 10, 2025
b46f73e
Add 4-octave fractal noise implementation to noiseGLSL.glsl
LalitNarayanYadav Jul 10, 2025
46842d0
Clean up examples a bit
davepagurek Jul 10, 2025
746a481
Merge pull request #7961 from processing/fix/strands-uniforms-instance
davepagurek Jul 10, 2025
e73b524
Add documentation for remaining public shader hooks in ShaderGenerato…
Abhayaj247 Jul 11, 2025
ac85b7e
Add specific flags to disable individual FES components
limzykenneth Jul 13, 2025
cbb3328
replace fn with direct downloadFile import to fix issue where fn was …
Jul 15, 2025
3e1e149
binary ops and contructors prototyped
lukeplowden Jul 16, 2025
f718717
simplify type system
lukeplowden Jul 16, 2025
24f0c46
SSA
lukeplowden Jul 16, 2025
53355a7
Merge pull request #7964 from LalitNarayanYadav/patch-9
davepagurek Jul 16, 2025
be02c79
Adding table
perminder-17 Jul 16, 2025
5d56030
Merge pull request #7902 from perminder-17/code-docs
perminder-17 Jul 16, 2025
6b54ecd
Address maintainer feedback: update shader hook docs and examples for…
Abhayaj247 Jul 17, 2025
e2fc4b3
Merge pull request #7967 from limzykenneth/fes-granular
ksen0 Jul 17, 2025
6c56f2f
Add minified ESM build output
nickswalker Jul 17, 2025
6d4540c
Merge pull request #7973 from nickswalker/minify-esm-build
ksen0 Jul 18, 2025
3c29209
Fix mediaElement.copy
pearmini Jul 20, 2025
50a4d64
Add unit test
pearmini Jul 20, 2025
3d5c2cf
Change name to customActions
limzykenneth Jul 21, 2025
1f296c1
Use prefix _ convention to prevent unintended global exposure of cust…
limzykenneth Jul 21, 2025
8b3871a
Add documentation for custom actions and event signal
limzykenneth Jul 21, 2025
0851285
Return type checking for hooks with native types reimplemented (i.e. …
lukeplowden Jul 23, 2025
9b84f6f
declarations moved to backend, hook arguments fixed
lukeplowden Jul 23, 2025
8509231
rename file
lukeplowden Jul 24, 2025
47eda1a
update api imports for new filename
lukeplowden Jul 24, 2025
1088b4d
move extractTypeInfo and rename to extractNodeTypeInfo
lukeplowden Jul 24, 2025
87e8a99
rename files for clarity
lukeplowden Jul 24, 2025
e32fd47
builtin function overloads type checking
lukeplowden Jul 24, 2025
11a1610
function calls partially reimplemented. Still needs more error checking.
lukeplowden Jul 24, 2025
e8f03d6
update function calls to conform parameters when raw numbers are handed
lukeplowden Jul 25, 2025
1ddd9a2
adding struct types
lukeplowden Jul 25, 2025
f3155e6
adding struct types
lukeplowden Jul 25, 2025
babedfd
Merge branch 'strands-refactor' of github.com:lukeplowden/p5.js into …
lukeplowden Jul 25, 2025
afff707
struct types working
lukeplowden Jul 26, 2025
2e70e0e
comment old line. Should revisit structs if needs optimisation.
lukeplowden Jul 26, 2025
6d5913a
fix wrong ID in binary op node
lukeplowden Jul 26, 2025
2745bda
fix bug with binary op, and make strandsNode return node if arg is al…
lukeplowden Jul 26, 2025
b858de8
Merge pull request #7971 from acgillette/saveObj_failing_download_fix
davepagurek Jul 27, 2025
3e43484
Documentation fix for swapped parameters in splinePoint and bezierPoint
shawdm Jul 27, 2025
f2206fb
Merge pull request #7997 from shawdm/dev-2.0-curves-docs-fix
davepagurek Jul 27, 2025
22b9a71
Update docs to match main branch
ksen0 Jul 28, 2025
b3d6e87
Merge pull request #8000 from processing/docs-match-main
ksen0 Jul 28, 2025
e5d4efa
2.0.4-rc.0
ksen0 Jul 28, 2025
06c2c6c
Merge branch 'processing:dev-2.0' into dev-2.0
perminder-17 Jul 28, 2025
cf31b71
Create auto-close-issues.yml
perminder-17 Jul 28, 2025
09ce776
Update p5.Geometry.js
perminder-17 Jul 28, 2025
3317bd1
Merge pull request #5 from perminder-17/perminder-17-patch-1
perminder-17 Jul 28, 2025
3ca7e6c
Update README.txt
perminder-17 Jul 28, 2025
bb2b666
Merge pull request #6 from perminder-17/perminder-17-patch-2
perminder-17 Jul 28, 2025
11bfaa5
Revert "Update README.txt"
perminder-17 Jul 28, 2025
1bace1c
Merge pull request #7 from perminder-17/revert-6-perminder-17-patch-2
perminder-17 Jul 28, 2025
a9fd0d4
Revert "Update p5.Geometry.js"
perminder-17 Jul 28, 2025
23e1836
Merge pull request #8 from perminder-17/revert-5-perminder-17-patch-1
perminder-17 Jul 28, 2025
4133fae
fix function call bugs
lukeplowden Jul 29, 2025
a258088
Reset millis() after setup
davepagurek Jul 29, 2025
0988670
fixing-docs
perminder-17 Jul 29, 2025
ca9d475
Merge pull request #8006 from perminder-17/mousejs-fixing
davepagurek Jul 29, 2025
b3ce3ec
remove dag sort, use basic block instructions instead. Also start wor…
lukeplowden Jul 30, 2025
9ebf77e
syntax/ remove unneccessary
lukeplowden Jun 24, 2025
faae3aa
blocking out new modular strands structure
lukeplowden Jun 27, 2025
f6783d2
chipping away at DOD approach.
lukeplowden Jul 1, 2025
06faa2c
nested ifs
lukeplowden Jul 5, 2025
5d32089
if/else semi working
lukeplowden Jul 7, 2025
95fa410
change if/elseif/else api to be chainable and functional (return assi…
lukeplowden Jul 9, 2025
627b7a3
binary ops and contructors prototyped
lukeplowden Jul 16, 2025
7899f0d
simplify type system
lukeplowden Jul 16, 2025
b731c15
SSA
lukeplowden Jul 16, 2025
7166f35
Return type checking for hooks with native types reimplemented (i.e. …
lukeplowden Jul 23, 2025
e4e54ac
declarations moved to backend, hook arguments fixed
lukeplowden Jul 23, 2025
51e8ddd
rename file
lukeplowden Jul 24, 2025
79c2f8d
update api imports for new filename
lukeplowden Jul 24, 2025
18dc1d3
move extractTypeInfo and rename to extractNodeTypeInfo
lukeplowden Jul 24, 2025
eb5f1bf
rename files for clarity
lukeplowden Jul 24, 2025
446d3ec
builtin function overloads type checking
lukeplowden Jul 24, 2025
83b4cf4
function calls partially reimplemented. Still needs more error checking.
lukeplowden Jul 24, 2025
a743c68
update function calls to conform parameters when raw numbers are handed
lukeplowden Jul 25, 2025
295c140
adding struct types
lukeplowden Jul 25, 2025
7cd3d42
adding struct types
lukeplowden Jul 25, 2025
f7b1339
struct types working
lukeplowden Jul 26, 2025
ba4be8b
comment old line. Should revisit structs if needs optimisation.
lukeplowden Jul 26, 2025
4fe4aaf
fix wrong ID in binary op node
lukeplowden Jul 26, 2025
0908e43
fix bug with binary op, and make strandsNode return node if arg is al…
lukeplowden Jul 26, 2025
5ce9451
fix function call bugs
lukeplowden Jul 29, 2025
54851ba
remove dag sort, use basic block instructions instead. Also start wor…
lukeplowden Jul 30, 2025
2b681b8
Merge branch 'strands-refactor' of github.com:lukeplowden/p5.js into …
lukeplowden Jul 30, 2025
ebaaa08
change example
lukeplowden Jul 30, 2025
dd1b2a2
Merge pull request #7980 from pearmini/fix-mediaElement-copy
ksen0 Jul 31, 2025
8ae76b9
2.0.4-rc.1
ksen0 Jul 31, 2025
87811da
Merge pull request #8005 from processing/millis
davepagurek Jul 31, 2025
d6380c5
2.0.4-rc.2
ksen0 Jul 31, 2025
c9fde09
Fix: Corrected code block in textureMode() in dev2.0
harishbit Aug 1, 2025
5ef51ca
Merge pull request #8015 from abuharish02/textturemode-dev2
davepagurek Aug 1, 2025
136f459
Add note about undefined custom actions to contributor docs
limzykenneth Aug 1, 2025
3d11637
Update src/strands/ir_builders.js
lukeplowden Aug 5, 2025
24ba4a0
Add shortcut methods for modifying base shaders and documentation
NalinDalal Aug 5, 2025
347900f
remove CFG sorting, make merge block use default behaviour, change ty…
lukeplowden Aug 5, 2025
1ddd5f8
remove old file and imports
lukeplowden Aug 5, 2025
085d1b8
Merge branch 'strands-refactor' of github.com:lukeplowden/p5.js into …
lukeplowden Aug 5, 2025
1e033ca
for pr 8020
NalinDalal Aug 5, 2025
bfe2867
2.0.4
ksen0 Aug 5, 2025
d5b64c7
Merge branch 'processing:dev-2.0' into dev-2.0
NalinDalal Aug 6, 2025
bf6b5a7
updated docs for clear instructions and documentation
NalinDalal Aug 6, 2025
f652ca1
Remove unnecessary import of p5 from material.js to avoid circular de…
NalinDalal Aug 6, 2025
5e726cc
Merge branch 'loopOptimization' of https://github.com/awood0727/p5.js…
awood0727 Aug 1, 2025
1146190
Update ShaderGenerator docs and examples
Abhayaj247 Aug 7, 2025
20ce8c7
Merge pull request #8024 from awood0727/dev-2.0
ksen0 Aug 7, 2025
d041b1c
Merge branch 'processing:dev-2.0' into dev-2.0
NalinDalal Aug 8, 2025
d2d1ead
Update docs: use create*Shader examples, remove misleading modify com…
NalinDalal Aug 8, 2025
0d5477a
imported p5 into material to avoid build errors
NalinDalal Aug 8, 2025
6cfe0fe
start from scratch
NalinDalal Aug 8, 2025
74ae50c
updated yml file to resolve the pr auto-close issue
NalinDalal Aug 8, 2025
36c4c2d
Address maintainer feedback: Update ShaderGenerator docs and examples
Abhayaj247 Aug 8, 2025
6e1311d
Fix shouldDiscard example
Abhayaj247 Aug 8, 2025
58d8e5d
Fix getPixelInputs description and getFinalColor example
Abhayaj247 Aug 8, 2025
483edcb
Fix getPixelInputs description and getColor description
Abhayaj247 Aug 8, 2025
203254b
regex update to listen for more flexible words
NalinDalal Aug 9, 2025
29fbe52
Address Maintainer feedbacks: Update ShaderGenerator docs and examples
Abhayaj247 Aug 9, 2025
2114b85
Update README.md
perminder-17 Aug 11, 2025
5229bc2
Merge pull request #8029 from perminder-17/readme-updating
ksen0 Aug 12, 2025
24fb3eb
fixing typo and rephrasing docs of splineProperty.
perminder-17 Aug 16, 2025
1f49e14
delete testing files
perminder-17 Aug 16, 2025
49d31eb
typo
perminder-17 Aug 16, 2025
5be62ef
fixes
perminder-17 Aug 17, 2025
39e92ac
fixes
perminder-17 Aug 17, 2025
24b2ca8
fixing the link from curve() to spline()
perminder-17 Aug 17, 2025
a4981a0
fixing spline() examples.
perminder-17 Aug 17, 2025
c8a5a71
fixing splinePoint() and splineTangent()
perminder-17 Aug 17, 2025
34ddffe
adding little detail about splineProperty(ends)
perminder-17 Aug 17, 2025
9099bac
adding an example sketch for splineProperty 'ends'
perminder-17 Aug 17, 2025
ba0c64a
some minor fixes
perminder-17 Aug 17, 2025
ec7a3aa
fixing docs
perminder-17 Aug 17, 2025
c085c12
fixes
perminder-17 Aug 17, 2025
79d2fe2
Fix noise() getting overridden; add tests
davepagurek Aug 18, 2025
e54b0e2
Skip shader noise test for now
davepagurek Aug 18, 2025
be56924
Address maintainer feedback by refining references, param annotations…
Abhayaj247 Aug 19, 2025
17992d7
updated .modify() links
Abhayaj247 Aug 19, 2025
39f1fb0
Fixed syntax error at disableFriendleErrors
Iron-56 Aug 19, 2025
c2fb61f
Merge pull request #8038 from Iron-56/Renderer-syntax-error-fix
davepagurek Aug 19, 2025
ff81847
Address maintainer feedback by updating fill color, adjusting sphere …
Abhayaj247 Aug 20, 2025
ed61111
Merge pull request #8036 from processing/fix/noise
ksen0 Aug 21, 2025
cd19498
curve()---->spline()
perminder-17 Aug 22, 2025
7da91e3
Removing control/anchor point usage.
perminder-17 Aug 23, 2025
177e9b5
updating anchor/control points wordings in curve.js
perminder-17 Aug 23, 2025
de27aa2
fix: removing unnecessary points.
perminder-17 Aug 23, 2025
6be95e5
Updating more docs.
perminder-17 Aug 24, 2025
22be152
adding some examples.
perminder-17 Aug 24, 2025
a8d97dd
fixing lint tests
perminder-17 Aug 24, 2025
88ebc9c
minor fixes
perminder-17 Aug 24, 2025
3b8f573
some minor fixes.
perminder-17 Aug 25, 2025
cf449f4
some minor fixes.
perminder-17 Aug 25, 2025
64aaf95
2.0.5-rc.0
ksen0 Aug 25, 2025
484a636
fix: suggestion.
perminder-17 Aug 27, 2025
ff9c657
fix:suggestion.
perminder-17 Aug 27, 2025
241998a
Removing TODO.
perminder-17 Aug 27, 2025
e9eaf99
Merge pull request #8031 from perminder-17/splineDocs
perminder-17 Aug 27, 2025
4e08d08
Include current HSB/HSL maxes in functions retrieving values
limzykenneth Aug 29, 2025
c2afbe7
Fix most of the eslint warnings currently generated
limzykenneth Aug 29, 2025
86bf86a
chore(ci): replace inline issue-closing script with reusable Action
NalinDalal Aug 29, 2025
4cd09f1
2.0.5
ksen0 Sep 1, 2025
bf63f55
Update .github/workflows/auto-close-issues.yml
ksen0 Sep 1, 2025
b2b561a
Merge pull request #8025 from NalinDalal/dev-2.0
ksen0 Sep 1, 2025
f933495
Fix unit test referencing undefined variable
limzykenneth Sep 2, 2025
2f68572
minor-fixing in shape docs
perminder-17 Sep 4, 2025
611d70f
Merge pull request #8066 from perminder-17/splineDocs-minior-fix
perminder-17 Sep 4, 2025
c1229d5
changes
Sep 4, 2025
cbe9c5e
change example
Sep 4, 2025
190f979
Update src/type/textCore.js
Nitin2332 Sep 4, 2025
49c3911
Update src/type/textCore.js
Nitin2332 Sep 4, 2025
b0790ba
Update auto-close-issues.yml
ksen0 Sep 4, 2025
f998af3
Merge pull request #8069 from processing/ksen0-patch-2
ksen0 Sep 4, 2025
3efe5cb
rearrange
Sep 5, 2025
ca016c3
Merge pull request #8067 from Nitin2332/fix/textwidth-spaces
perminder-17 Sep 5, 2025
2b9c7f5
adding examples in curve.js
perminder-17 Sep 5, 2025
70d661f
adding examples in custom-shapes
perminder-17 Sep 5, 2025
9438029
Merge pull request #7940 from Abhayaj247/update-strands-docs
perminder-17 Sep 5, 2025
0fbfa53
Merge branch 'dev-2.0' into eslint-fixes
limzykenneth Sep 9, 2025
be953ca
Merge pull request #8063 from limzykenneth/eslint-fixes
limzykenneth Sep 9, 2025
848a4e4
Merge branch 'dev-2.0' into events-api
limzykenneth Sep 9, 2025
3f16918
Perform recommended robust check for custom actions being functions
limzykenneth Sep 9, 2025
5787faf
Merge pull request #7947 from limzykenneth/events-api
limzykenneth Sep 9, 2025
a4fbdaa
Merge pull request #8070 from perminder-17/spline-work-2.0
perminder-17 Sep 10, 2025
f806006
bug fixes, swizzle reads working, swizzle writes WIP
lukeplowden Sep 11, 2025
fdd141e
fixing-issue
perminder-17 Sep 12, 2025
05ad75c
removing unnecessary changes
perminder-17 Sep 12, 2025
62f6524
removing unnecessary changes.
perminder-17 Sep 12, 2025
fb5c245
Update settings.json
perminder-17 Sep 12, 2025
b0b3ee8
Update settings.json
perminder-17 Sep 12, 2025
33059bc
fixing (suggestion)
perminder-17 Sep 13, 2025
86ba30d
fixing indentation
perminder-17 Sep 13, 2025
4e82bf3
reference-fix-2.0
Nitin2332 Sep 13, 2025
752a7fe
Merge pull request #8083 from perminder-17/fontBounds-NaN
davepagurek Sep 14, 2025
fc8ca8a
Merge pull request #8086 from Nitin2332/reference-fix-2.0
perminder-17 Sep 14, 2025
d2c17af
fix textures, struct bugs, and add swizzle assign.
lukeplowden Sep 15, 2025
d5c7fe8
remove old shadergenerator file
lukeplowden Sep 15, 2025
100304f
remove dev console.log
lukeplowden Sep 15, 2025
6d115df
Simplify saturation function colorMode assignment
ksen0 Sep 16, 2025
10a2d43
Merge pull request #8062 from limzykenneth/fix-hsbl-maxes
ksen0 Sep 16, 2025
2b863e6
add instance mode changes, fix bug where struct properties returned i…
lukeplowden Sep 16, 2025
6462345
mark atan as p5 function, prevent bug where using atan outside strand…
lukeplowden Sep 16, 2025
37abf7f
add back documentation
lukeplowden Sep 16, 2025
f3afffc
add todo for internal parser options
lukeplowden Sep 16, 2025
b31cd28
Only copy array when necessary
davepagurek Sep 16, 2025
4e145ca
Cache bound global functions
davepagurek Sep 16, 2025
73b7601
Optimize more matrix and vector things
davepagurek Sep 16, 2025
d0ed1ec
Optimize some more cases
davepagurek Sep 16, 2025
8625db9
Cache types and bound functions
davepagurek Sep 16, 2025
6b4c3b2
Factor out common setter
davepagurek Sep 16, 2025
d4d968a
Merge branch 'dev-2.0' into strands-refactor
davepagurek Sep 17, 2025
bf92d1c
Fix issue with strands being immediately active
davepagurek Sep 17, 2025
a269bd7
Add back alias for previous uniformVector2 syntax
davepagurek Sep 17, 2025
4a11290
Fix: allow single-arg atan() outside strands; add visual test
Abhayaj247 Sep 17, 2025
795954a
Optimize further when FES is disabled
davepagurek Sep 17, 2025
f88689e
Disable FES function decoration when FES is disabled
limzykenneth Sep 17, 2025
1a86985
Merge pull request #8094 from processing/global-function-perf
davepagurek Sep 17, 2025
b5021f5
Fix atan unit tests: handle single-arg and two-arg cases, remove visu…
Abhayaj247 Sep 17, 2025
18eb43c
add comments for clarity on swizzling and onrebind
lukeplowden Sep 18, 2025
bae0545
Merge branch 'strands-refactor' of github.com:lukeplowden/p5.js into …
lukeplowden Sep 18, 2025
e81920f
Parse hookTypes into a strands codegen type
davepagurek Sep 18, 2025
b2e4e34
Update atan unit tests to comply with maintainer feedback
Abhayaj247 Sep 18, 2025
f03d3b5
Merge pull request #8096 from Abhayaj247/fix/atan-strands
davepagurek Sep 18, 2025
f43770c
Merge branch 'dev-2.0' into strands-refactor
davepagurek Sep 18, 2025
ecc8061
Merge atan test file into trigonometry tests and get it working
davepagurek Sep 18, 2025
d2cda2a
Merge pull request #8009 from lukeplowden/strands-refactor
davepagurek Sep 18, 2025
4036e3a
Update createCamera docs since it no longer sets the active camera
davepagurek Sep 19, 2025
53c12c3
Merge pull request #8100 from processing/update-createcamera-docs
ksen0 Sep 19, 2025
e122564
feat(webgl) : Add activeCamera() and deprecate setCamera()
ombalgude Sep 23, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
643 changes: 613 additions & 30 deletions .all-contributorsrc

Large diffs are not rendered by default.

1 change: 0 additions & 1 deletion .eslintignore

This file was deleted.

54 changes: 0 additions & 54 deletions .eslintrc.json

This file was deleted.

20 changes: 17 additions & 3 deletions .github/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,12 +4,26 @@

# Comment to be posted to on first time issues
newIssueWelcomeComment: >
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!
# Configuration for new-pr-welcome - https://github.com/behaviorbot/new-pr-welcome
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.

For guidance on contributing, check out our [contributing guidelines](https://github.com/processing/p5.js/blob/main/CONTRIBUTING.md) and other [resources for contributors](https://p5js.org/contribute/).

💬 If you have questions or need support, feel free to join the [Processing Foundation Forum](https://discourse.processing.org/) or visit our [Community page](https://p5js.org/community/).

📜 Please also review our [Code of Conduct](https://p5js.org/code-of-conduct/) to understand our community standards.

Thank You!
# Configuration for new-pr-welcome - https://github.com/behaviorbot/new-pr-welcome
# Comment to be posted to on PRs from first time contributors in your repository
newPRWelcomeComment: >
🎉 Thanks for opening this pull request! Please check out our [contributing guidelines](https://github.com/processing/p5.js/blob/main/CONTRIBUTING.md) if you haven't already. And be sure to add yourself to the [list of contributors on the readme page](https://github.com/processing/p5.js#contributors)!
🎉 Thanks for opening this pull request! For guidance on contributing, check out our [contributor guidelines](https://p5js.org/contribute/contributor_guidelines/) and other [resources for contributors](https://p5js.org/contribute)!

🤔 Please ensure that your PR links to an issue, which has been approved for work by a maintainer; otherwise, there might already be someone working on it, or still ongoing discussion about implementation. You are welcome to join the discussion in an Issue if you're not sure!

🌸 Once your PR is merged, be sure to [add yourself](https://github.com/processing/p5.js/issues/2309) to the [list of contributors on the readme page](https://github.com/processing/p5.js#contributors) !


Thank You!

# Configuration for first-pr-merge - https://github.com/behaviorbot/first-pr-merge

Expand Down
18 changes: 18 additions & 0 deletions .github/workflows/auto-close-issues.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
name: Close Linked Issues on PR Merge

on:
pull_request:
types: [closed]
branches:
- dev-2.0

jobs:
close_issues:
if: github.event.pull_request.merged == true
runs-on: ubuntu-latest
steps:
- name: Close linked issues on non-default branches
uses: processing/branch-pr-close-issue@v1
with:
token: ${{ secrets.GITHUB_TOKEN }}
branch: dev-2.0
1 change: 1 addition & 0 deletions .github/workflows/ci-test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ on:
push:
branches:
- main
- dev-2.0
pull_request:
branches:
- '*'
Expand Down
115 changes: 115 additions & 0 deletions .github/workflows/release-workflow-v2.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,115 @@
name: New p5.js 2.x release
# Requires secrets `NPM_TOKEN` and `ACCESS_TOKEN` to be set

permissions:
contents: write

on:
push:
tags:
- 'v2.*.*' # Push events to matching v*.*.*, i.e. v20.15.10
- 'v2.*.*-*' # Push events to matching v*.*.*-*, i.e. v20.15.10-0

jobs:
release:
runs-on: ubuntu-latest
name: Release
env:
INPUT_TOKEN: ${{ secrets.NPM_TOKEN }}
steps:
# 1. Setup
- uses: actions/checkout@v3
- uses: actions/setup-node@v3
with:
node-version: 20
- name: Get semver info
id: semver
uses: akshens/semver-tag@v4
with:
version: ${{ github.ref_name }}

- name: Get version number
id: version-number
run: |
version=$(echo ${{ github.ref_name }} | cut -c 2-)
echo "version=$version" >> $GITHUB_OUTPUT

- name: Get current date
id: date
run: echo "date=$(date +"%B %Oe, %Y")" >> $GITHUB_OUTPUT
- name: Install dependencies
run: npm ci
env:
CI: true
- name: Run test
run: npm test
env:
CI: true
- name: Run build
run: npm run build
- name: Generate types
run: npm run generate-types

# 2. Prepare release files
- run: mkdir release && mkdir p5 && cp -r ./lib/* p5/
- name: Create release zip file
uses: TheDoctor0/[email protected]
with:
type: zip
filename: release/p5.zip
path: ./p5/*

- name: Copy release files
run: cp lib/p5.js lib/p5.min.js lib/p5.esm.js release/

# 3. Release p5.js
- name: Create GitHub release
uses: softprops/[email protected]
with:
draft: true
prerelease: ${{ steps.semver.outputs.is-prerelease == 'true' }}
files: release/*
generate_release_notes: true
token: ${{ secrets.ACCESS_TOKEN }}
- name: Publish to NPM
uses: JS-DevTools/npm-publish@v1
with:
token: ${{ secrets.NPM_TOKEN }}
tag: ${{ steps.semver.outputs.is-prerelease != 'true' && 'latest' || 'beta' }}

# 4. Update p5.js website
- name: Clone p5.js website
if: ${{ steps.semver.outputs.is-prerelease != 'true' }}
uses: actions/checkout@v3
with:
repository: processing/p5.js-website
ref: '2.0'
path: website
fetch-depth: 0
token: ${{ secrets.ACCESS_TOKEN }}
- name: Updated website files
if: ${{ steps.semver.outputs.is-prerelease != 'true' }}
run: |
cd website
npm install
npm run build:p5-version
npm run build:contributor-docs
npm run build:contributors
npm run build:reference
npm run build:search
- name: Commit updated website files
if: ${{ steps.semver.outputs.is-prerelease != 'true' }}
run: |
cd website
git config --local user.email "41898282+github-actions[bot]@users.noreply.github.com"
git config --local user.name "github-actions[bot]"
git add .
git commit -m "Update p5.js to ${{ github.ref_name }}"
- name: Push updated website repo
if: ${{ steps.semver.outputs.is-prerelease != 'true' }}
uses: ad-m/[email protected]
with:
github_token: ${{ secrets.ACCESS_TOKEN }}
branch: '2.0'
directory: website/
repository: processing/p5.js-website
11 changes: 6 additions & 5 deletions .github/workflows/release-workflow.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,8 @@ permissions:
on:
push:
tags:
- 'v*.*.*' # Push events to matching v*.*.*, i.e. v20.15.10
- 'v*.*.*-*' # Push events to matching v*.*.*-*, i.e. v20.15.10-0
- 'v1.*.*' # Push events to matching v*.*.*, i.e. v20.15.10
- 'v1.*.*-*' # Push events to matching v*.*.*-*, i.e. v20.15.10-0

jobs:
release:
Expand Down Expand Up @@ -41,11 +41,12 @@ jobs:
run: npm ci
env:
CI: true
- name: Run build
- name: Run test
run: npm test
env:
CI: true
- run: rm ./lib/p5-test.js ./lib/p5.pre-min.js
- name: Run build
run: npm run build

# 2. Prepare release files
- run: mkdir release && mkdir p5 && cp -r ./lib/* p5/
Expand Down Expand Up @@ -88,11 +89,11 @@ jobs:
run: |
cd website
npm install
npm run build:p5-version
npm run build:contributor-docs
npm run build:contributors
npm run build:reference
npm run build:search
npm run build:p5-version
- name: Commit updated website files
if: ${{ steps.semver.outputs.is-prerelease != 'true' }}
run: |
Expand Down
53 changes: 31 additions & 22 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,22 +1,31 @@
*.DS_Store
.project
node_modules/*
experiments/*
lib_old/*
lib/p5.*
lib/modules
docs/reference/*
!*.gitkeep
examples/3d/
.idea
dist/
p5.zip
bower-repo/
p5-website/
.vscode/settings.json
.nyc_output/*
coverage/
lib/p5-test.js
release/
parameterData.json
yarn.lock
!*.gitkeep

.nyc_output/*
# .vscode/settings.json
node_modules/*

analyzer/
bower-repo/
coverage/
examples/3d/
experiments/*
dist/
docs/reference/*
docs/data.json
lib_old/*
lib/p5.*
lib/p5-test.js
lib/modules
p5-website/
preview/
release/
__screenshots__/

*.d.ts
p5.zip
yarn.lock
todo.md

*.DS_Store
.idea
.project
13 changes: 13 additions & 0 deletions .vscode/settings.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
{
"prettier.enable": false,
"eslint.enable": true,
"eslint.validate": [
{ "language": "html", "autoFix": false },
{ "language": "javascript", "autoFix": false },
{ "language": "markdown", "autoFix": false },
],
"editor.defaultFormatter": null,
"editor.formatOnSave": false,
"editor.codeActionsOnSave": {},
"javascript.format.enable": false
}
2 changes: 1 addition & 1 deletion CODE_OF_CONDUCT.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@

## [p5.js community statement](http://p5js.org/community/)
## [p5.js community statement](https://p5js.org/community/)

p5.js is a community interested in exploring the creation of art and design with technology.

Expand Down
Loading