Skip to content

Releases: vizzly-testing/cli

✨ v0.27.0

05 Feb 09:51

Choose a tag to compare

Vizzly CLI v0.27.0 Release Notes

What's Changed

Added

  • JSON Output Support (--json flag)

    • All commands now support machine-readable JSON output
    • Optional field selection: --json field1,field2
    • Consistent output format with {status, data} or {status, error} structure
    • Makes CLI fully scriptable and LLM-friendly
  • New Discovery Commands

    • vizzly orgs - List organizations with access levels and project counts
    • vizzly projects - List projects with optional --org filtering
    • vizzly builds - List and query builds with pagination support
    • vizzly comparisons - Query and search comparisons by build, ID, or name
    • vizzly baselines - List all local TDD baselines with metadata
  • New Review Commands

    • vizzly approve <comparison-id> - Approve a comparison
    • vizzly reject <comparison-id> -r "reason" - Reject with detailed reason
    • vizzly comment <build-id> "message" - Add comments to builds
  • User Authentication Fallback

    • Config loader now falls back to user JWT from vizzly login
    • Enables interactive CLI usage without project tokens
    • Works alongside existing project token auth for CI/CD workflows
  • Developer Experience Improvements

    • Help examples added to all new commands
    • Workflow guidance in help output
    • npm run cli script for local development

Changed

  • Node.js and npm Requirements

    • Updated to use Node 22 with npm 11.5.1+ for Trusted Publishers
    • Requires engines.node >= 22.0.0
  • npm Release Process

    • Switched to OIDC Trusted Publishers for improved security
    • No longer uses registry-url configuration
    • Now uses GitHub-hosted runners for more reliable releases

Full Changelog: ruby/v0.2.1...v0.27.0

✨ v0.26.2

03 Feb 09:15

Choose a tag to compare

v0.26.2

What's Changed

Added

  • Screenshot events now logged to server.log with detailed metadata (name, status, diff percentage) for menubar app integration
  • Individual screenshot result tracking enables the menubar log viewer to display visual test results with status indicators (passed, failed, new, accepted, rejected)

Full Changelog: v0.26.1...v0.26.2

✨ v0.26.1

03 Feb 07:10

Choose a tag to compare

v0.26.1

What's Changed

Changed

  • Enhanced TDD server logging for menubar app - Output from info(), warn(), and success() functions are now logged to server.log, providing better visibility into TDD server operations in the menubar application
  • Menubar notifications on macOS - The TDD server now sends instant notifications to macOS menubar when server events occur (safely no-ops on Windows/Linux)
  • Honeydiff upgraded to v0.10.0 - Updated the visual diffing engine for improved performance and accuracy in screenshot comparisons

Full Changelog: v0.26.0...v0.26.1

✨ v0.26.0

03 Feb 06:10

Choose a tag to compare

v0.26.0 Release Notes

What's Changed

Added

  • Menubar app support - New infrastructure for the macOS menubar companion app
    • Global server registry at ~/.vizzly/servers.json tracks all running TDD servers
    • Auto-port allocation - tdd start automatically finds an available port when the default (47392) is in use, allowing multiple projects to run simultaneously
    • JSON-formatted server logs written to .vizzly/server.log for menubar app visibility
    • Shell PATH saving for menubar app to locate npx and node executables
    • New vizzly tdd list command to view all running servers with details (port, uptime, directory, etc.)

Full Changelog: v0.25.1...v0.26.0

✨ v0.25.1

02 Feb 09:53

Choose a tag to compare

v0.25.1 Release Notes

What's Changed

Added

  • Configurable browser type: Added browser.type configuration option and --browser CLI flag to control which browser engine (chromium, firefox, webkit) is used for static-site and storybook clients. Users can now select their preferred browser and control browser installation in CI/CD environments for better caching and dependency management.
  • --public-link flag for preview command: The vizzly preview command now requires the --public-link flag when previewing private projects. This ensures users explicitly acknowledge that preview URLs grant access to anyone with the link until expiration.
  • Resilient finalize command: The finalize command now gracefully handles missing builds by default (exits with code 0 and shows a warning), improving CI/CD experience when Vizzly tests are conditionally skipped. Added a global --strict flag across all CLI commands to opt into hard failures when needed.

Fixed

  • Fixed project visibility check in preview command to correctly handle API response structure

Changed

  • Updated dependencies including commander, Babel, Playwright, React, and development tools

Full Changelog: storybook/v0.4.0...v0.25.1

✨ v0.25.0

30 Jan 06:44

Choose a tag to compare

Vizzly CLI v0.25.0

What's Changed

Added

  • VIZZLY_BUILD_NAME environment variable: Set custom build names in CI without CLI flags. Useful for dynamic naming in your pipeline.

    export VIZZLY_BUILD_NAME="PR #${PR_NUMBER} - ${BRANCH_NAME}"
    vizzly run "npm test"
  • Git detection API for plugins: New services.git.detect() API for plugins to reliably detect git information in any CI environment (GitHub Actions, GitLab, local, etc.). This replaces fragile workarounds and handles edge cases like GitHub Actions PR merge commits.

Changed

  • Plugin API improvements: The storybook and static-site plugins now use the proper git detection API instead of dynamic imports, resulting in more reliable git information detection across different CI environments.

Full Changelog: static-site/v0.1.0...v0.25.0

✨ v0.24.1

30 Jan 03:48

Choose a tag to compare

Vizzly CLI v0.24.1

What's Changed

Added

  • Documentation for Chrome browser flags - New docs/browser-flags.md provides comprehensive reference for Chrome command-line flags used by SDKs, including purpose, deprecation status, and replacement options. Last audited for January 2026 compatibility.

Changed

  • Migrated Storybook and Static-Site SDKs from Puppeteer to Playwright - Both SDKs now use playwright-core instead of Puppeteer, resolving critical timeout issues in parallel test execution:

    • Screenshots now complete in <1 second (previously timing out after 60+ seconds)
    • Client-side navigation for Storybook provides ~47x speedup (reduced from 94s to 2s for 10 screenshots)
    • Migrated from tab-based pooling to BrowserContext-based pooling for proper isolation
    • Updated API calls (setViewport()setViewportSize(), networkidle2networkidle)
  • Chrome browser flags audit - Removed deprecated/problematic flags causing hangs and performance issues:

    • Removed --disable-gpu (deprecated in 2021) and --disable-software-rasterizer (causes hangs)
    • Removed deprecated flags --disable-translate, --safebrowsing-disable-auto-update, --disable-infobars, and --headless=new
    • Modernized to use --disable-features=Translate,OptimizationHints,MediaRouter approach
    • Added screenshot consistency flags: --force-color-profile=srgb, --hide-scrollbars
  • Optimized Storybook client-side navigation - Improved story navigation performance:

    • Uses __STORYBOOK_PREVIEW__.channel.emit('setCurrentStory') for navigation instead of full page reloads
    • First story per tab loads full page to initialize Storybook; subsequent stories use client-side navigation
    • Tasks now sorted by viewport to minimize resize operations
  • Enhanced plugin system - Improved plugin loading with better error handling and deduplication logic for version conflicts

Full Changelog: storybook/v0.2.0...v0.24.1

📚 Storybook Plugin v0.4.0

30 Jan 06:47

Choose a tag to compare

[0.4.0] - 2026-01-30

What's Changed

Changed

  • Improved git detection in CI environments (GitHub Actions, GitLab, etc.) by using the CLI's plugin API instead of fragile dynamic imports
  • Updated peer dependency to @vizzly-testing/cli >= 0.24.0 for better git detection support
  • Better handling of PR builds - now correctly detects branch names and commit SHAs in merge commits

Fixed

  • Fixed incorrect git information (wrong branch, wrong commit SHA) in PR builds
  • Fixed plugin breaking in some environments due to failed dynamic imports

Full Changelog: storybook/v0.3.0...storybook/v0.4.0

📚 Storybook Plugin v0.3.0

30 Jan 03:50

Choose a tag to compare

[0.3.0] - 2026-01-30

What's Changed

Changed

  • BREAKING: Migrated from Puppeteer to Playwright for browser automation
    • Replace puppeteer dependency with playwright-core
    • This significantly improves screenshot performance and reliability in CI environments
    • Screenshots now complete in <1 second instead of timing out after 60+ seconds
    • ~47x performance improvement for Storybook navigation (94s → 2s for 10 screenshots) thanks to client-side story navigation
    • If you have custom browser configurations, you may need to update them for Playwright compatibility

Fixed

  • Fixed critical screenshot timeout issues in CI environments caused by Puppeteer's parallel capture limitations
  • Improved browser context isolation for parallel workers, preventing race conditions
  • Removed deprecated Chrome flags that caused hangs and inconsistent behavior
  • Added screenshot consistency flags (--force-color-profile=srgb, --hide-scrollbars) for more reliable visual comparisons

Added

  • Client-side navigation for Storybook stories using Storybook's internal event system
    • First story per tab uses full page load to initialize Storybook
    • Subsequent stories use fast client-side navigation with storyRendered event handling
  • Tasks are now sorted by viewport to minimize resize operations and improve performance
  • Support for vizzlyPlugin field in package.json for plugin registration (replacing nested vizzly.plugin format)

Full Changelog: storybook/v0.2.0...storybook/v0.3.0

🏗️ Static Site Plugin v0.2.0

30 Jan 06:46

Choose a tag to compare

[0.2.0] - 2026-01-30

What's Changed

Changed

  • Improved git detection in CI environments by using the new services.git.detect() plugin API
  • Replaced fragile dynamic imports with clean plugin API integration
  • Now correctly detects branch names and commit SHAs in GitHub Actions PR builds and other CI environments
  • Updated minimum CLI version requirement to >=0.24.0 (graceful fallback for older versions with warning)

Full Changelog: static-site/v0.1.0...static-site/v0.2.0