Percy is designed to integrate with your tests and CI environment. To enable Percy, the token environment variable must be configured in your CI service:
`
PERCY_TOKEN
`: The Percy repo write-only API token. This is unique for each Percy repository.
# CircleCI project setup
CircleCI provides an easy way to set environment variables in project settings:
<https://circleci.com/docs/2.0/env-vars/#setting-an-environment-variable-in-a-project>
In your CircleCI project, go to Project settings > Environment Variables.
Then set `PERCY_TOKEN
` to the write-only token from your Percy repo. This token can be found in each Percy repo's settings.

# Alternative circle.yml setup
A different way is to add the environment variables to your `circle.yml
`. See the [CircleCI: Using Environment Variables](🔗) docs for more info.
**IMPORTANT: Keep your Percy token secret.** Anyone with access to your token can consume your account quota, though they cannot read data.
If your code is public, do not add the `
PERCY_TOKEN
` to your code and use the above environment setup instead.
# Next step: integrate with tests
You're done with setup---the last step is to integrate Percy into your tests and run them. Just choose your client library:
JavaScript
[Ember](🔗)
[React](🔗)
[Storybook for React](🔗)
[Storybook for Angular](🔗)
[Storybook for Vue.js](🔗)
[Storybook for Ember](🔗)
[Cypress](🔗)
[WebdriverIO](🔗)<sup>beta</sup>
[Puppeteer](🔗)<sup>beta</sup>
[Nightmare.js](🔗)<sup>beta</sup>
[Protractor](🔗)<sup>beta</sup>
Ruby
[Rails](🔗)
[Other](🔗)
[Capybara, no tests](🔗)
[Best practices](🔗)
Python
[Selenium](🔗)
Static sites
[Command-line client](🔗)
Everything else
[Percy Anywhere](🔗)
# Additional resource
We teamed up with the CircleCI team for a live demo of our integrated workflow. Watch the recording of the session below to learn more about our [CircleCI orb](🔗), and see a live visual testing demo.