Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
58 commits
Select commit Hold shift + click to select a range
a785f2a
Create donate.mdx Korean translation file
kangjung Mar 27, 2025
4ce3453
Merge branch 'processing:main' into main
kangjung Mar 29, 2025
218b115
Update donate.mdx
kangjung Mar 29, 2025
1c2efda
Create code-of-conduct.mdx Korean translation file
kangjung Apr 1, 2025
3efdeb5
Fixes #871
reshma045 Jun 28, 2025
73d8a8c
Fixes #881
reshma045 Jul 1, 2025
ea3db86
Update ReferenceLayout.astro
reshma045 Jul 6, 2025
24ddb1b
Merge branch 'main' into fix-branch
perminder-17 Jul 14, 2025
4cd7ebc
issue properly fixed
reshma045 Jul 23, 2025
782ac69
Accessibility: Differentiate external footer links with icon and tooltip
Kakashi786 Aug 3, 2025
42b69c7
Add Hindi, Spanish, Korean translations for tutorial section headings
Kakashi786 Aug 4, 2025
a057c3b
Merge branch 'main' into fix-i18n-translations
ksen0 Aug 11, 2025
7cfd45b
test(a11y): set up Playwright and add home page accessibility test (d…
tsengwoody Aug 12, 2025
3c5eec6
test: exclude test/a11y folder from Vitest to avoid running Playwrigh…
tsengwoody Aug 12, 2025
01f8f36
Fix words based on review comments
Kakashi786 Aug 13, 2025
12bac5f
Merge branch 'fix-i18n-translations' of https://github.com/Homaid/p5.…
Kakashi786 Aug 13, 2025
1fb1b71
Update src/content/ui/ko.yaml
perminder-17 Aug 17, 2025
d8fd885
Merge pull request #931 from Homaid/fix-i18n-translations
perminder-17 Aug 17, 2025
421309b
Merge branch 'processing:main' into code-of-conduct
kangjung Aug 18, 2025
38ecdf3
fixing-build-failure on deployment
perminder-17 Aug 21, 2025
a5638df
Merge pull request #940 from perminder-17/main
ksen0 Aug 21, 2025
ab65f6f
feat(community): expand curated sketches to include 2025 set
MissTipo Aug 14, 2025
5c9bb14
Remove redundant duplicate filter
MissTipo Aug 14, 2025
c20ab1c
Merge pull request #942 from MissTipo/community-sketches-main
davepagurek Aug 22, 2025
168c949
Fix Markdown backtick escaping in Variables and Change tutorial
adi-ray Aug 22, 2025
087d3f5
Merge pull request #944 from adi-ray/fix-markdown
perminder-17 Aug 22, 2025
5a6de3d
Update p5.js to v1.11.10
github-actions[bot] Aug 23, 2025
e7997d6
Merge branch 'processing:main' into main
kangjung Aug 24, 2025
620ea28
Merge branch 'processing:main' into code-of-conduct
kangjung Aug 24, 2025
257f759
Incorporate review feedback into translation
kangjung Aug 24, 2025
cef3d1b
Incorporate review feedback into translation
kangjung Aug 24, 2025
d9c5bf8
Merge pull request #767 from kangjung/code-of-conduct
ksen0 Aug 25, 2025
da0dfb5
Merge pull request #761 from kangjung/main
ksen0 Aug 25, 2025
cb042ed
Fix OpenProcessing visualID type mismatch causing rate limiting
junseok44 Sep 8, 2025
df637e9
Merge pull request #959 from junseok44/fix-openprocessing-visualId-ty…
ksen0 Sep 8, 2025
c678a04
Merge pull request #927 from Homaid/fix-footer-links-accessibility
ksen0 Sep 8, 2025
f548f3a
Merge branch 'main' into issue881-branch
ksen0 Sep 8, 2025
5764d4c
Merge pull request #889 from reshma045/issue881-branch
ksen0 Sep 8, 2025
c7aca89
Auto Close issues (#952)
NalinDalal Sep 9, 2025
fdffeaf
Changed excessively long alt text for 2 images (#885)
sprinklehappiness Sep 9, 2025
e974f06
Merge pull request #933 from coseeian/axe-core-playwright
ksen0 Sep 9, 2025
e2b7cf2
Add p5.spatial.js yaml
ogbabydiesal Sep 11, 2025
aed3efc
add p5.spatial.js image
ogbabydiesal Sep 11, 2025
80c9390
Merge pull request #968 from ogbabydiesal/main
davepagurek Sep 11, 2025
6c6f9a3
add validation filtering in getStaticPaths for OpenProcessing sketches
junseok44 Sep 9, 2025
a21097e
add OpenProcessing API caching tests
junseok44 Sep 11, 2025
393d3ba
improve error handling and add comprehensive error tests
junseok44 Sep 11, 2025
8f6ce64
Set script as inline
Iron-56 Sep 15, 2025
6e4af3f
Merge pull request #972 from Iron-56/missing-banner-fix
ksen0 Sep 17, 2025
b5478bf
Merge branch 'main' into feat-improve-sketch-build-validation
ksen0 Sep 17, 2025
fe6cdb9
Merge pull request #971 from junseok44/feat-improve-sketch-build-vali…
ksen0 Sep 17, 2025
eccc6cf
Merge pull request #884 from reshma045/fix-branch
ksen0 Sep 18, 2025
ba42e31
feat: Add test job dependency to build in GitHub Actions
junseok44 Sep 18, 2025
547cb9d
Merge pull request #973 from junseok44/feat-add-build-job-dependency
ksen0 Sep 18, 2025
b6ab5ab
Typo: Switch "let" to "int" to make GLSL code valid
BretHudson Sep 29, 2025
c362b85
Merge pull request #978 from BretHudson/fix-glsl-for-loop
davepagurek Sep 30, 2025
a2f0816
Merge pull request #974 from NalinDalal/2.0
ksen0 Oct 2, 2025
e1d02aa
Merge pull request #983 from NalinDalal/fix-issue-main-clean
ksen0 Oct 2, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 19 additions & 0 deletions .github/workflows/auto-close-issues.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
name: Close Linked Issues on PR Merge

on:
pull_request:
types: [closed]
branches:
- 2.0
- 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/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,7 @@ jobs:
run: npm run check
build:
runs-on: ubuntu-latest
needs: test
steps:
- name: Checkout your repository using git
uses: actions/checkout@v4
Expand Down
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -25,5 +25,8 @@ in/
out/
translator/

playwright-report/
test-results/

# Don't commit custom dev builds
public/p5.min.js
97 changes: 93 additions & 4 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

5 changes: 4 additions & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,8 @@
"build:search": "tsx ./src/scripts/builders/search.ts",
"build:p5-version": "tsx ./src/scripts/p5-version.ts",
"custom:dev": "tsx ./src/scripts/branchTest.ts",
"custom:cleanup": "tsx ./src/scripts/resetBranchTest.ts"
"custom:cleanup": "tsx ./src/scripts/resetBranchTest.ts",
"test:a11y": "playwright test test/a11y"
},
"dependencies": {
"@astrojs/check": "^0.5.5",
Expand Down Expand Up @@ -51,7 +52,9 @@
}
},
"devDependencies": {
"@axe-core/playwright": "^4.10.2",
"@codemirror/lang-javascript": "^6.2.2",
"@playwright/test": "^1.54.1",
"@preact/preset-vite": "^2.8.2",
"@swc/html": "^1.10.9",
"@testing-library/preact": "^3.2.3",
Expand Down
79 changes: 79 additions & 0 deletions playwright.config.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,79 @@
import { defineConfig, devices } from '@playwright/test';

// --- Runtime modes ---
// RUN_MODE=LOCAL -> Start Astro dev server (local development)
// RUN_MODE=BUILD -> Build Astro site and serve from "dist" (CI / closest to production)
// RUN_MODE=REMOTE -> Do not start any local server, test directly against remote URL
const RUN_MODE = process.env.RUN_MODE ?? (process.env.CI ? 'BUILD' : 'LOCAL');

// Allow overriding test directory via environment variable (default: ./tests)
const testDir = process.env.TEST_DIR ?? './test';

// Base URL changes depending on the mode
// LOCAL -> http://localhost:4321 (Astro dev server)
// BUILD -> http://localhost:4173 (served "dist")
// REMOTE -> PROD_BASE_URL (falls back to p5js.org)
const baseURL =
RUN_MODE === 'LOCAL'
? 'http://localhost:4321'
: RUN_MODE === 'BUILD'
? 'http://localhost:4173'
: process.env.PROD_BASE_URL ?? 'https://p5js.org';


export default defineConfig({
// Use dynamic testDir (default ./tests)
testDir,
outputDir: 'test-results',
// Global timeout for each test to improve stability
timeout: 30 * 1000,
fullyParallel: true,
forbidOnly: !!process.env.CI,
// Retry failed tests in CI
retries: process.env.CI ? 2 : 0,
// Force single worker in CI to avoid port/resource conflicts
workers: process.env.CI ? 1 : undefined,
// Reporters: "list" for readable console logs + "html" for detailed report
reporter: [
['list'],
['html', { outputFolder: 'playwright-report', open: 'never' }],
],
use: {
baseURL,
// Save trace only on first retry for debugging failed tests
trace: 'on-first-retry',
// Capture screenshot only on failure
screenshot: 'only-on-failure',
// Keep video only on failure in CI
video: process.env.CI ? 'retain-on-failure' : 'off',
},

// Test projects: three major engines + iPhone 15 viewport
projects: [
{ name: 'Desktop Chrome', use: { ...devices['Desktop Chrome'] } },
{ name: 'Desktop Firefox', use: { ...devices['Desktop Firefox'] } },
{ name: 'Desktop Safari', use: { ...devices['Desktop Safari'] } },
{ name: 'iPhone 15', use: { ...devices['iPhone 15'] } },
{ name: 'Pixel 7', use: { ...devices['Pixel 7'] } },
],

// Start appropriate webServer depending on the mode
webServer:
RUN_MODE === 'LOCAL'
? {
// Start Astro dev server for local development
command: 'npm run dev',
port: 4321,
reuseExistingServer: !process.env.CI,
timeout: 180_000,
}
: RUN_MODE === 'BUILD'
? {
command: 'npm run build && npm run preview -- --port 4173 --host',
port: 4173, // choose port OR url (not both)
reuseExistingServer: !process.env.CI,
timeout: 180_000,
}
: undefined, // REMOTE mode → no server started
});

Loading