Documentation Index
Fetch the complete documentation index at: https://docs.grantiva.io/llms.txt
Use this file to discover all available pages before exploring further.
GitHub Actions
Environment variables
| Variable | Description |
|---|---|
GRANTIVA_API_KEY | API key for authentication (required in CI) |
GRANTIVA_API_URL | Base URL override (default: https://api.grantiva.io) |
Pre-built binaries
Grantiva can consume pre-built.app bundles or .ipa archives instead of building from source. This decouples the build from the test, enabling faster and more flexible CI pipelines.
--app-file is provided:
- The
xcodebuildstep is skipped entirely - The binary is validated to be a simulator build (not a device build)
- The bundle ID is derived from the binary’s
Info.plistif not specified .ipafiles are automatically extracted (.appfromPayload/)schemeis not required ingrantiva.yml
Split build and test
Separate the build and test into different CI jobs. This lets you cache build artifacts, reuse them across multiple test runs, and run visual regression on different device configurations in parallel.- Build and test can be separate jobs (even separate machines)
- Build artifacts can be cached and reused across multiple test runs
- Visual regression doesn’t re-build when only baselines changed
- Multiple Grantiva configs (different screen sizes, locales) can run in parallel against the same binary
JSON output for scripting
0 if all screens pass, 1 if any fail — works with CI if conditions.
Approving new baselines
When UI changes are intentional, approve the new screenshots:Results
After each run, the CLI outputs:- Run ID and dashboard URL
- Screen-by-screen pass/fail status
- Pixel diff percentage and perceptual distance per screen
- Total duration