From ebfdc73387484671d629150c7d04ba68fa50a991 Mon Sep 17 00:00:00 2001 From: Sagar-Kap <69609200+Sagar-Kap@users.noreply.github.com> Date: Fri, 22 May 2026 05:01:02 +0300 Subject: [PATCH 1/3] chore(workflow): refactor & deploy playground --- .github/workflows/qa.yml | 3 +++ playground/nuxt.config.ts | 2 +- playground/package.json | 4 ++-- pnpm-lock.yaml | 11 +++-------- 4 files changed, 9 insertions(+), 11 deletions(-) diff --git a/.github/workflows/qa.yml b/.github/workflows/qa.yml index 977593e..89b528e 100644 --- a/.github/workflows/qa.yml +++ b/.github/workflows/qa.yml @@ -1,6 +1,9 @@ name: "Code QA Checks" on: + push: + branches: + - main pull_request: types: - synchronize diff --git a/playground/nuxt.config.ts b/playground/nuxt.config.ts index 10ebfb6..af7988c 100644 --- a/playground/nuxt.config.ts +++ b/playground/nuxt.config.ts @@ -1,5 +1,5 @@ export default defineNuxtConfig({ - modules: ['../src/module'], + modules: ['@weburz/particle-canvas'], devtools: { enabled: true }, compatibilityDate: 'latest', diff --git a/playground/package.json b/playground/package.json index 9c7560f..c5fa870 100644 --- a/playground/package.json +++ b/playground/package.json @@ -1,6 +1,6 @@ { "private": true, - "name": "my-module-playground", + "name": "particle-canvas-playground", "type": "module", "scripts": { "dev": "nuxt dev", @@ -8,7 +8,7 @@ "generate": "nuxt generate" }, "dependencies": { - "my-module": "latest", + "@weburz/particle-canvas": "workspace:*", "nuxt": "^4.4.5" } } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index da4fdf2..fc4c9fa 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -54,9 +54,9 @@ importers: playground: dependencies: - my-module: - specifier: latest - version: 1.0.0 + '@weburz/particle-canvas': + specifier: workspace:* + version: link:.. nuxt: specifier: ^4.4.5 version: 4.4.6(@babel/plugin-syntax-jsx@7.28.6(@babel/core@7.29.0))(@babel/plugin-syntax-typescript@7.28.6(@babel/core@7.29.0))(@parcel/watcher@2.5.6)(@types/node@25.9.1)(@vue/compiler-sfc@3.5.34)(cac@6.7.14)(db0@0.3.4)(eslint@10.4.0(jiti@2.7.0))(ioredis@5.10.1)(magicast@0.5.3)(optionator@0.9.4)(rollup-plugin-visualizer@7.0.1(rollup@4.60.4))(rollup@4.60.4)(srvx@0.11.15)(terser@5.47.1)(typescript@6.0.3)(vite@7.3.3(@types/node@25.9.1)(jiti@2.7.0)(terser@5.47.1)(yaml@2.9.0))(vue-tsc@3.3.0(typescript@6.0.3))(yaml@2.9.0) @@ -3413,9 +3413,6 @@ packages: muggle-string@0.4.1: resolution: {integrity: sha512-VNTrAak/KhO2i8dqqnqnAHOa3cYBwXEZe9h+D5h/1ZqFSTEFHdM65lR7RoIqq3tBBYavsOXV84NoHXZ0AkPyqQ==} - my-module@1.0.0: - resolution: {integrity: sha512-HVXnQnmqCsGAbflaM8qvKqI6F2U1LMW8ivjWXGqqOa/5hDZrH0+Vv8JFCcEJ5c8ZrHFm/zS6o/4kVrOfxky+4g==} - nanoid@3.3.12: resolution: {integrity: sha512-ZB9RH/39qpq5Vu6Y+NmUaFhQR6pp+M2Xt76XBnEwDaGcVAqhlvxrl3B2bKS5D3NH3QR76v3aSrKaF/Kiy7lEtQ==} engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} @@ -8187,8 +8184,6 @@ snapshots: muggle-string@0.4.1: {} - my-module@1.0.0: {} - nanoid@3.3.12: {} nanotar@0.3.0: {} From 5fe417634a95903807683a0616f2657cdf7070ee Mon Sep 17 00:00:00 2001 From: Sagar-Kap <69609200+Sagar-Kap@users.noreply.github.com> Date: Fri, 22 May 2026 05:27:35 +0300 Subject: [PATCH 2/3] feat(playground): add GitHub Pages deploy workflow --- .github/ISSUE_TEMPLATE/bug-report.yml | 78 ++++++++++++++++++++++ .github/ISSUE_TEMPLATE/config.yml | 12 ++++ .github/ISSUE_TEMPLATE/feature-request.yml | 23 +++++++ .github/pull_request_template.md | 9 +++ .github/workflows/deploy-playground.yml | 65 ++++++++++++++++++ playground/nuxt.config.ts | 8 +++ 6 files changed, 195 insertions(+) create mode 100644 .github/ISSUE_TEMPLATE/bug-report.yml create mode 100644 .github/ISSUE_TEMPLATE/config.yml create mode 100644 .github/ISSUE_TEMPLATE/feature-request.yml create mode 100644 .github/pull_request_template.md create mode 100644 .github/workflows/deploy-playground.yml diff --git a/.github/ISSUE_TEMPLATE/bug-report.yml b/.github/ISSUE_TEMPLATE/bug-report.yml new file mode 100644 index 0000000..9012a81 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/bug-report.yml @@ -0,0 +1,78 @@ +name: Bug Report +description: File a bug report +title: "[BUG]: " +labels: ["bug"] + +body: + - type: markdown + attributes: + value: | + Thanks for taking the time to fill out this bug report! + + - type: textarea + id: what-happened + attributes: + label: What happened? + description: + Describe the bug clearly. What did you see, and what did you expect to + see instead? + placeholder: When I render with ..., the particles do X. + I expected them to do Y. + validations: + required: true + + - type: textarea + id: steps + attributes: + label: Steps to reproduce + description: List the exact steps someone else can follow to see the same + bug. + placeholder: | + 1. Install @weburz/particle-canvas + 2. Add to a page + 3. Open the page in + 4. Observe ... + validations: + required: true + + - type: input + id: reproduction + attributes: + label: Minimal reproduction + description: + A link to a minimal repro is the single most helpful thing you can + provide. Use StackBlitz, CodeSandbox, or a small public GitHub repo. + placeholder: https://stackblitz.com/edit/... + validations: + required: false + + - type: textarea + id: environment + attributes: + label: Environment + description: Versions of the relevant tools and the platform you saw the + bug on. + value: | + - `@weburz/particle-canvas` version: + - Nuxt version: + - Node.js version: + - Package manager (pnpm / npm / yarn / bun) + version: + - OS: + - Browser + version: + validations: + required: true + + - type: textarea + id: logs + attributes: + label: Relevant log output + description: Console errors, build output, anything related. No need for + backticks — this auto-formats as a shell block. + render: Shell + + - type: textarea + id: screenshots + attributes: + label: Screenshots / video + description: For visual bugs, a screenshot or short screen recording is + worth far more than a description. Drag and drop into the box. diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml new file mode 100644 index 0000000..024cdb6 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/config.yml @@ -0,0 +1,12 @@ +blank_issues_enabled: false + +contact_links: + - name: Report Issues and/or Bugs + url: https://github.com/Weburz/particle-canvas/issues + about: Please report bugs & other issues here. + + - name: Security Policy + url: https://github.com/Weburz/particle-canvas/security/policy + about: + Refer to the Security Policy to report security vulnerabilities or if you + would like to know about how your personal information is used. diff --git a/.github/ISSUE_TEMPLATE/feature-request.yml b/.github/ISSUE_TEMPLATE/feature-request.yml new file mode 100644 index 0000000..c295ca1 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/feature-request.yml @@ -0,0 +1,23 @@ +name: Feature Request +description: Suggest a feature request or an enhancement +title: "[ENHANCEMENT]: " +labels: ["enhancement"] + +body: + - type: markdown + attributes: + value: | + Thanks for recommending the enhancement! + + - type: textarea + id: feature-enhancement + attributes: + label: Explain the feature + description: + Explain the enhancement or feature requests you have in mind, in as much + details as possible. + placeholder: Explain the feature and/or the enhancement in full detail. + value: Implement XYZ feature which provides so and so capabilities to the + website... + validations: + required: true diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md new file mode 100644 index 0000000..d452fdd --- /dev/null +++ b/.github/pull_request_template.md @@ -0,0 +1,9 @@ +## Description + +TODO: Include a brief summary about the PR. + +## Modifications + +TODO: Provide detailed lists of all changes introduced with the PR. + +### Fixed issue(s): diff --git a/.github/workflows/deploy-playground.yml b/.github/workflows/deploy-playground.yml new file mode 100644 index 0000000..9bb1a38 --- /dev/null +++ b/.github/workflows/deploy-playground.yml @@ -0,0 +1,65 @@ +name: "Deploy Playground" + +on: + push: + branches: + - main + workflow_dispatch: + +permissions: + contents: read + pages: write + id-token: write + +concurrency: + group: pages + cancel-in-progress: false + +jobs: + build: + name: Generate static playground + runs-on: ubuntu-latest + + steps: + - name: Checkout repository + uses: actions/checkout@v6.0.2 + + - name: Install pnpm + uses: pnpm/action-setup@v4.2.0 + with: + version: 11.1.3 + + - name: Setup Node.js + uses: actions/setup-node@v6.2.0 + with: + node-version: 22 + cache: "pnpm" + + - name: Install dependencies + run: pnpm install --frozen-lockfile + + - name: Prepare module + playground stubs + run: pnpm dev:prepare + + - name: Generate static site + run: pnpm exec nuxi generate playground + env: + NUXT_APP_BASE_URL: /particle-canvas/ + + - name: Upload Pages artifact + uses: actions/upload-pages-artifact@v3 + with: + path: playground/.output/public + + deploy: + name: Deploy to GitHub Pages + needs: build + runs-on: ubuntu-latest + environment: + name: github-pages + url: ${{ steps.deployment.outputs.page_url }} + + steps: + - name: Deploy + id: deployment + uses: actions/deploy-pages@v4 diff --git a/playground/nuxt.config.ts b/playground/nuxt.config.ts index af7988c..1d75b82 100644 --- a/playground/nuxt.config.ts +++ b/playground/nuxt.config.ts @@ -3,4 +3,12 @@ export default defineNuxtConfig({ devtools: { enabled: true }, compatibilityDate: 'latest', + + app: { + baseURL: process.env.NUXT_APP_BASE_URL || '/', + }, + + nitro: { + preset: 'github_pages', + }, }) From 221e411659ef5a5968f3c4dc985f8ac9475f2a52 Mon Sep 17 00:00:00 2001 From: Sagar-Kap <69609200+Sagar-Kap@users.noreply.github.com> Date: Fri, 22 May 2026 05:53:53 +0300 Subject: [PATCH 3/3] fix: eslint errors --- .github/workflows/deploy-playground.yml | 2 -- playground/nuxt.config.ts | 2 +- 2 files changed, 1 insertion(+), 3 deletions(-) diff --git a/.github/workflows/deploy-playground.yml b/.github/workflows/deploy-playground.yml index 9bb1a38..de29458 100644 --- a/.github/workflows/deploy-playground.yml +++ b/.github/workflows/deploy-playground.yml @@ -43,8 +43,6 @@ jobs: - name: Generate static site run: pnpm exec nuxi generate playground - env: - NUXT_APP_BASE_URL: /particle-canvas/ - name: Upload Pages artifact uses: actions/upload-pages-artifact@v3 diff --git a/playground/nuxt.config.ts b/playground/nuxt.config.ts index 1d75b82..dbbad34 100644 --- a/playground/nuxt.config.ts +++ b/playground/nuxt.config.ts @@ -2,11 +2,11 @@ export default defineNuxtConfig({ modules: ['@weburz/particle-canvas'], devtools: { enabled: true }, - compatibilityDate: 'latest', app: { baseURL: process.env.NUXT_APP_BASE_URL || '/', }, + compatibilityDate: 'latest', nitro: { preset: 'github_pages',