Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
6 changes: 3 additions & 3 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,10 +14,10 @@ jobs:
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6

- name: Use Node.js 22.13.1
- name: Use Node.js 22.18.0
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6
with:
node-version: '22.13.1'
node-version: '22.18.0'

- name: Install pnpm
run: |
Expand All @@ -42,7 +42,7 @@ jobs:

strategy:
matrix:
node-version: ['22.13.1', 24]
node-version: ['22.18.0', 24]

steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/release-ember-client.yml
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ jobs:
- name: Set up Node.js
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6
with:
node-version: '22.14.0'
node-version: '22.18.0'
registry-url: 'https://registry.npmjs.org'

- name: Upgrade npm for Trusted Publishers
Expand Down Expand Up @@ -124,7 +124,7 @@ jobs:
- name: Set Node.js back to release version
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6
with:
node-version: '22.14.0'
node-version: '22.18.0'
registry-url: 'https://registry.npmjs.org'

- name: Install dependencies
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/release-ruby-client.yml
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ jobs:
- name: Setup Node.js
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6
with:
node-version: '22.13.1'
node-version: '22.18.0'

- name: Set up Ruby
uses: ruby/setup-ruby@97ecb7b512899eb71ab1bf2310a624c6f1589ac6 # v1
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/release-static-site-client.yml
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ jobs:
- name: Set up Node.js
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6
with:
node-version: '22.14.0'
node-version: '22.18.0'
registry-url: 'https://registry.npmjs.org'

- name: Upgrade npm for Trusted Publishers
Expand Down Expand Up @@ -115,7 +115,7 @@ jobs:
- name: Set Node.js back to release version
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6
with:
node-version: '22.14.0'
node-version: '22.18.0'
registry-url: 'https://registry.npmjs.org'

- name: Install dependencies
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/release-storybook-client.yml
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ jobs:
- name: Set up Node.js
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6
with:
node-version: '22.14.0'
node-version: '22.18.0'
registry-url: 'https://registry.npmjs.org'

- name: Upgrade npm for Trusted Publishers
Expand Down Expand Up @@ -115,7 +115,7 @@ jobs:
- name: Set Node.js back to release version
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6
with:
node-version: '22.14.0'
node-version: '22.18.0'
registry-url: 'https://registry.npmjs.org'

- name: Install dependencies
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/release-swift-client.yml
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ jobs:
- name: Setup Node.js
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6
with:
node-version: '22.14.0'
node-version: '22.18.0'
registry-url: 'https://registry.npmjs.org'

- name: Upgrade npm for Trusted Publishers
Expand Down Expand Up @@ -150,7 +150,7 @@ jobs:
- name: Restore Node.js for publishing
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6
with:
node-version: '22.14.0'
node-version: '22.18.0'
registry-url: 'https://registry.npmjs.org'

- name: Restore npm for publishing
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/release-vitest-client.yml
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ jobs:
- name: Set up Node.js
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6
with:
node-version: '22.14.0'
node-version: '22.18.0'
registry-url: 'https://registry.npmjs.org'

- name: Upgrade npm for Trusted Publishers
Expand Down Expand Up @@ -115,7 +115,7 @@ jobs:
- name: Set Node.js back to release version
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6
with:
node-version: '22.14.0'
node-version: '22.18.0'
registry-url: 'https://registry.npmjs.org'

- name: Install dependencies
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ jobs:
- name: Setup Node.js
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6
with:
node-version: '22.14.0'
node-version: '22.18.0'
registry-url: 'https://registry.npmjs.org'

- name: Upgrade npm for Trusted Publishers
Expand Down Expand Up @@ -159,7 +159,7 @@ jobs:
- name: Restore Node.js for publishing
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6
with:
node-version: '22.14.0'
node-version: '22.18.0'
registry-url: 'https://registry.npmjs.org'

- name: Restore npm and pnpm for publishing
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/reporter.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,10 +15,10 @@ jobs:
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6

- name: Use Node.js 22.13.1
- name: Use Node.js 22.18.0
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6
with:
node-version: '22.13.1'
node-version: '22.18.0'

- name: Install pnpm
run: |
Expand Down
28 changes: 14 additions & 14 deletions .github/workflows/sdk-e2e.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,10 +16,10 @@ jobs:
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6

- name: Use Node.js 22.13.1
- name: Use Node.js 22.18.0
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6
with:
node-version: '22.13.1'
node-version: '22.18.0'

- name: Install pnpm
run: |
Expand Down Expand Up @@ -78,10 +78,10 @@ jobs:
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6

- name: Use Node.js 22.13.1
- name: Use Node.js 22.18.0
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6
with:
node-version: '22.13.1'
node-version: '22.18.0'

- name: Install pnpm
run: |
Expand Down Expand Up @@ -141,10 +141,10 @@ jobs:
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6

- name: Use Node.js 22.13.1
- name: Use Node.js 22.18.0
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6
with:
node-version: '22.13.1'
node-version: '22.18.0'

- name: Install pnpm
run: |
Expand Down Expand Up @@ -221,10 +221,10 @@ jobs:
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6

- name: Use Node.js 22.13.1
- name: Use Node.js 22.18.0
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6
with:
node-version: '22.13.1'
node-version: '22.18.0'

- name: Install pnpm
run: |
Expand Down Expand Up @@ -295,10 +295,10 @@ jobs:
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6

- name: Use Node.js 22.13.1
- name: Use Node.js 22.18.0
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6
with:
node-version: '22.13.1'
node-version: '22.18.0'

- name: Install pnpm
run: |
Expand Down Expand Up @@ -366,10 +366,10 @@ jobs:
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6

- name: Use Node.js 22.13.1
- name: Use Node.js 22.18.0
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6
with:
node-version: '22.13.1'
node-version: '22.18.0'

- name: Install pnpm
run: |
Expand Down Expand Up @@ -424,10 +424,10 @@ jobs:
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6

- name: Use Node.js 22.13.1
- name: Use Node.js 22.18.0
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6
with:
node-version: '22.13.1'
node-version: '22.18.0'

- name: Install pnpm
run: |
Expand Down
28 changes: 20 additions & 8 deletions .github/workflows/sdk-unit.yml
Original file line number Diff line number Diff line change
Expand Up @@ -62,10 +62,10 @@ jobs:
with:
ruby-version: ${{ matrix.ruby-version }}

- name: Use Node.js 22.13.1
- name: Use Node.js 22.18.0
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6
with:
node-version: '22.13.1'
node-version: '22.18.0'

- name: Install pnpm
run: |
Expand Down Expand Up @@ -103,7 +103,7 @@ jobs:

strategy:
matrix:
node-version: ['22.13.1', 24]
node-version: ['22.18.0', 24]

steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
Expand Down Expand Up @@ -153,7 +153,7 @@ jobs:

strategy:
matrix:
node-version: ['22.13.1', 24]
node-version: ['22.18.0', 24]

steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
Expand Down Expand Up @@ -195,15 +195,16 @@ jobs:

# Vitest SDK - runs on multiple Node versions
vitest:
name: Vitest SDK
name: Vitest SDK (Node ${{ matrix.node-version }}, Vitest ${{ matrix.vitest-version }})
runs-on: ubuntu-latest
timeout-minutes: 8
needs: changes
if: needs.changes.outputs.vitest == 'true'

strategy:
matrix:
node-version: ['22.13.1', 24]
node-version: ['22.18.0', 24]
vitest-version: [4, 5]

steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
Expand All @@ -229,6 +230,11 @@ jobs:
working-directory: ./clients/vitest
run: pnpm install --frozen-lockfile

- name: Install Vitest 4 for compatibility tests
if: matrix.vitest-version == 4
working-directory: ./clients/vitest
run: pnpm add -D vitest@4.1.11 @vitest/browser@4.1.11 @vitest/browser-playwright@4.1.11

- name: Get installed Playwright version
working-directory: ./clients/vitest
id: playwright-version
Expand All @@ -250,6 +256,12 @@ jobs:
working-directory: ./clients/vitest
run: pnpm run lint

- name: Run Vitest client browser tests
working-directory: ./clients/vitest
run: pnpm run test:browser
env:
CI: true

- name: Run Vitest client unit tests
working-directory: ./clients/vitest
run: pnpm run test:unit
Expand Down Expand Up @@ -290,10 +302,10 @@ jobs:
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6

- name: Use Node.js 22.13.1
- name: Use Node.js 22.18.0
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6
with:
node-version: '22.13.1'
node-version: '22.18.0'

- name: Install pnpm
run: |
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/tui.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,10 +15,10 @@ jobs:
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6

- name: Use Node.js 22.13.1
- name: Use Node.js 22.18.0
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6
with:
node-version: '22.13.1'
node-version: '22.18.0'

- name: Setup tui-driver
uses: vizzly-testing/tui-driver@f21ea93489f2160eccf4d58844e456a9b38a0491 # main
Expand Down
15 changes: 14 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ build or diff data for scripts, automation, and coding agents.

## Quick Start

You need Node.js 22+.
You need Node.js 22.18 or newer within Node 22, or Node.js 24+.

```bash
pnpm install -g @vizzly-testing/cli
Expand All @@ -43,6 +43,19 @@ existing Vizzly config.
Use `vizzly init --agent-skill` to install or refresh only the local skill, or
`vizzly init --skip-agent-skill` when you want config without the agent prompt.

### TypeScript Configuration

Vizzly loads `vizzly.config.ts` with Node's native type stripping. Type
annotations, interfaces, and `satisfies` work without installing TypeScript.
Use `import type` for type-only imports and include file extensions when
importing local helpers, such as `./helpers.ts`.

Enums, namespaces containing runtime code, and constructor parameter properties
aren't supported. Replace them with ordinary JavaScript values and assignments.
Node doesn't apply `tsconfig.json` path aliases when loading your config.
These restrictions apply to the config and its imports; they don't change how
your application or tests compile.

### Start Local TDD

Start the TDD server, run your tests, and open the dashboard at the URL the
Expand Down
2 changes: 1 addition & 1 deletion clients/ember/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@
"check:fix": "biome check --write src tests bin"
},
"engines": {
"node": ">=22.0.0"
"node": "^22.18.0 || >=24.0.0"
},
"publishConfig": {
"access": "public",
Expand Down
8 changes: 8 additions & 0 deletions clients/static-site/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,14 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [Unreleased]

### Changed

- Require Node.js 22.18 or newer within Node 22, or Node.js 24+.
- Remove the unused Cosmiconfig dependency. Configuration still comes from
the CLI and the existing interactions file loader.

## [0.3.0] - 2026-06-01

## What's Changed
Expand Down
Loading
Loading