THIS REPO IS AN EXAMPLE FOR TRYING TO MITIGATE THE SHADOM DOM SUPPORT AND IS NOT PRODUCTION READY!
The Percy CLI is used to interact with, and upload snapshots to, percy.io via the command line.
$ npm install --save-dev @tipalti/percy-cli
percy exec
- capture and upload snapshotspercy snapshot
- snapshot a static directory or a list of pagespercy upload
- upload a static directory of imagespercy config
- manage configuration filespercy build
- interact with Percy builds
In addition to the CLI packages, this repo contains core libraries responsible for Percy's CI/CD integrations, Percy API communication, DOM serialization, asset discovery, etc.
@tipalti/percy-core
- performs snapshot asset discovery and uploading@tipalti/percy-client
- handles communicating with the Percy API@tipalti/percy-dom
- serializes DOM snapshots@tipalti/percy-env
- captures CI build environment variables@tipalti/percy-config
- loads Percy configuration files@tipalti/percy-logger
- common logger used throughout the CLI@tipalti/percy-sdk-utils
- shared helpers for JavaScript SDKs@tipalti/percy-cli-command
- Percy CLI command framework
For problems directly related to the CLI, add an issue on GitHub.
For other issues, open a support request.
This project is built with lerna. The core libaries and CLI plugins are
located in ./packages. Run yarn
to install dependencies after cloning the repo and
use the following scripts for various development tasks:
yarn build
- build all packagesyarn build:watch
- build and watch all packages in parallelyarn clean
- clean up build and coverage outputyarn lint
- lint all packagesyarn readme
- generate cli commands readme usageyarn test
- run all tests, one package after anotheryarn test:coverage
- run all tests with coverage, one package after another
Individual package scripts can be invoked using yarn's workspace command. For example:
$ yarn workspace @tipalti/percy-core test