{"_id":"@cubiream/scintillator-cli","_rev":"2-35458c0a0b428679b1ab1d69d37444c8","name":"@cubiream/scintillator-cli","dist-tags":{"latest":"0.0.2"},"versions":{"0.0.1":{"name":"@cubiream/scintillator-cli","version":"0.0.1","_id":"@cubiream/scintillator-cli@0.0.1","maintainers":[{"name":"cubiream","email":"ops@cubiream.com"}],"bin":{"scintillator":"dist/index.js"},"dist":{"shasum":"ccfea504480c134ec08813a0071d508f507f6797","tarball":"https://registry.npmjs.org/@cubiream/scintillator-cli/-/scintillator-cli-0.0.1.tgz","fileCount":1,"integrity":"sha512-P+k029Hyd/V0sxtkKxAgsqfKQWH4Y9LjVf4QPbMFxF+w6KZRb5YforVhs+DkZaNXoSSGFbXjn4BtzGrstPrwvg==","signatures":[{"sig":"MEQCIHr6by9MZTSxkGF4WB7Q8sgtauzyhSfvYhPlXJqjD/r6AiANgaApJVbi259yAO9WSaF7g3Z0DC6SpSr2VQogQ08ouA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":568},"gitHead":"061517bd8ca553dfb68b500f1c44beee2014f0c5","scripts":{"dev":"tsup --watch","fix":"biome check --write .","build":"tsup","release":"npm publish --access public"},"_npmUser":{"name":"cubiream","email":"ops@cubiream.com"},"_npmVersion":"11.4.2","directories":{},"_nodeVersion":"24.3.0","dependencies":{"cac":"^6.7.14","@aws-sdk/client-s3":"^3.978.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","typescript":"^5.9.3","@types/node":"^25.1.0","@biomejs/biome":"^2.3.13"},"_npmOperationalInternal":{"tmp":"tmp/scintillator-cli_0.0.1_1769768203514_0.15188191465399647","host":"s3://npm-registry-packages-npm-production"}},"0.0.2":{"name":"@cubiream/scintillator-cli","version":"0.0.2","publishConfig":{"access":"public"},"bin":{"scintillator":"dist/index.mjs"},"scripts":{"build":"tsup","dev":"tsup --watch","release":"npm publish --access public","fix":"biome check --write .","prepublishOnly":"pnpm run build"},"dependencies":{"@aws-sdk/client-s3":"^3.978.0","cac":"^6.7.14"},"devDependencies":{"@biomejs/biome":"^2.3.13","@types/node":"^25.1.0","tsup":"^8.5.1","typescript":"^5.9.3"},"_id":"@cubiream/scintillator-cli@0.0.2","gitHead":"b6f1692bb2cb56d7db7568921a2f464e52ea6bbe","description":"R2-native artifact management for Visual Regression Testing. No databases. No complex orchestration. Just storage.","_nodeVersion":"24.3.0","_npmVersion":"11.4.2","dist":{"integrity":"sha512-mqhx9q4BoSAynO57QI/HMoMr/bhL03tKSS5TvNtpId0DU0aEwsSNY3KeGDSCxjP+F/exvgp19PsNFvAtDgPfzQ==","shasum":"1963da97d530ce0e7d2afd8c898d5569df7d6876","tarball":"https://registry.npmjs.org/@cubiream/scintillator-cli/-/scintillator-cli-0.0.2.tgz","fileCount":3,"unpackedSize":6044,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCICYT4WhMAuIX+mlemUSa4NrNHzLo6XfOJBPHkvNGF/MvAiAUa+2Lm5SDx/b1gyJ91xbxRvgxZoFcLGYkwZVqhHX0MQ=="}]},"_npmUser":{"name":"cubiream","email":"ops@cubiream.com"},"directories":{},"maintainers":[{"name":"cubiream","email":"ops@cubiream.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/scintillator-cli_0.0.2_1769770803749_0.4327897142538386"},"_hasShrinkwrap":false}},"time":{"created":"2026-01-30T10:16:43.371Z","modified":"2026-01-30T11:00:03.991Z","0.0.1":"2026-01-30T10:16:43.643Z","0.0.2":"2026-01-30T11:00:03.882Z"},"maintainers":[{"name":"cubiream","email":"ops@cubiream.com"}],"readme":"# Scintillator CLI\n\nR2-native artifact management for Visual Regression Testing.\nNo databases. No complex orchestration. Just storage.\n\n## Installation\n\n```bash\npnpm add -D @cubiream/scintillator-cli\n```\n\n## Configuration\n\nThe CLI requires specific environment variables to authenticate with Cloudflare R2.\n\n| Variable | Description |\n| :--- | :--- |\n| `CF_ACCOUNT_ID` | Your Cloudflare Account ID. |\n| `R2_ACCESS_KEY_ID` | R2 Token Access Key ID. |\n| `R2_SECRET_ACCESS_KEY` | R2 Token Secret Access Key. |\n| `R2_BUCKET` | Target Bucket Name (Default: `visual-regression-test`). |\n\n## Execution\n\n### Restore\nDownloads baseline images from R2 to the local environment.\nRequired before running visual comparisons.\n\n```bash\nscintillator restore --bucket my-vrt-bucket\n```\n\n### Upload\nUploads the current build artifacts (actual screenshots) and generated diffs to R2.\nPasses the current Commit SHA via `GITHUB_SHA`.\n\n```bash\nscintillator upload\n```\n\n### Update\nPromotes the current artifacts to be the new baseline.\n**Note:** Strictly checks if `GITHUB_REF` matches the primary branch.\n\n```bash\nscintillator update\n```\n\n## CI Integration\n\nDesigned to run inside GitHub Actions.\n\n```yaml\nname: VRT\non: [push]\n\njobs:\n  test:\n    runs-on: ubuntu-latest\n    steps:\n      - uses: actions/checkout@v4\n      \n      # ... build steps ...\n\n      - name: Restore Baseline\n        run: npx scintillator restore\n        env:\n          CF_ACCOUNT_ID: ${{ secrets.CF_ACCOUNT_ID }}\n          R2_ACCESS_KEY_ID: ${{ secrets.R2_ACCESS_KEY_ID }}\n          R2_SECRET_ACCESS_KEY: ${{ secrets.R2_SECRET_ACCESS_KEY }}\n\n      - name: Run Visual Tests\n        run: pnpm exec lost-pixel # or your preferred tool\n\n      - name: Upload Artifacts\n        if: always()\n        run: npx scintillator upload\n        env:\n          CF_ACCOUNT_ID: ${{ secrets.CF_ACCOUNT_ID }}\n          R2_ACCESS_KEY_ID: ${{ secrets.R2_ACCESS_KEY_ID }}\n          R2_SECRET_ACCESS_KEY: ${{ secrets.R2_SECRET_ACCESS_KEY }}\n```\n\n## License\n\nMIT\n","readmeFilename":"README.md","description":"R2-native artifact management for Visual Regression Testing. No databases. No complex orchestration. Just storage."}