{"_id":"@anacobra/studio-bridge","name":"@anacobra/studio-bridge","dist-tags":{"latest":"0.1.0"},"versions":{"0.1.0":{"name":"@anacobra/studio-bridge","version":"0.1.0","description":"Serves Anacobra Studio's compiled variations to the Companion browser extension on ws://localhost:9001","keywords":["anacobra","ab-testing","websocket","bridge"],"homepage":"https://github.com/oimigy/anacobra-studio/tree/main/bridge#readme","bugs":{"url":"https://github.com/oimigy/anacobra-studio/issues"},"repository":{"type":"git","url":"git+https://github.com/oimigy/anacobra-studio.git","directory":"bridge"},"type":"module","bin":{"anacobra-bridge":"index.mjs"},"scripts":{"smoke":"node smoke.mjs"},"engines":{"node":">=20"},"dependencies":{"ws":"^8.18.0"},"license":"MIT","publishConfig":{"access":"public"},"_id":"@anacobra/studio-bridge@0.1.0","gitHead":"00b5e3348c328d1beeba702c73e65a913ad55a44","_nodeVersion":"22.23.1","_npmVersion":"10.9.8","dist":{"integrity":"sha512-c8lpQEGimKAtJE8jdKiWrXMdNFWLUqP7B2oNTVKhMzUqhAcU6N13Q3a7WsNC+GZARhr0SQBCwC6Hrrqz3CidSQ==","shasum":"0b61eaea34fadcc28fd24d4e2ee7f62619a4dd99","tarball":"https://registry.npmjs.org/@anacobra/studio-bridge/-/studio-bridge-0.1.0.tgz","fileCount":4,"unpackedSize":9258,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQDFf/HT7tgJrE74ijqkkxhpEuOzh2Cxn4SVbHT+OeK8SgIgCkO2yxM47CVeL810SbAfdBcIWd3dn+QayDd3bAM0hpo="}]},"_npmUser":{"name":"osama-ibrahim","email":"osama.oimgroup@gmail.com"},"directories":{},"maintainers":[{"name":"osama-ibrahim","email":"osama.oimgroup@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/studio-bridge_0.1.0_1785367091294_0.37113968625651195"},"_hasShrinkwrap":false}},"time":{"created":"2026-07-29T23:18:11.133Z","0.1.0":"2026-07-29T23:18:11.429Z","modified":"2026-07-29T23:18:11.651Z"},"maintainers":[{"name":"osama-ibrahim","email":"osama.oimgroup@gmail.com"}],"description":"Serves Anacobra Studio's compiled variations to the Companion browser extension on ws://localhost:9001","homepage":"https://github.com/oimigy/anacobra-studio/tree/main/bridge#readme","keywords":["anacobra","ab-testing","websocket","bridge"],"repository":{"type":"git","url":"git+https://github.com/oimigy/anacobra-studio.git","directory":"bridge"},"bugs":{"url":"https://github.com/oimigy/anacobra-studio/issues"},"license":"MIT","readme":"# @anacobra/studio-bridge\n\nServes a studio experiment's compiled variations to the\n[Anacobra Studio Companion](https://chromewebstore.google.com/detail/anacobra-studio-companion/legjlepaffjahehdlaanopoegijkjmeh)\nbrowser extension, so you can see a variation on the real page it targets.\n\n```\nnpx @anacobra/studio-bridge --token acst_… --experiment 4\n```\n\nInstall the extension first — it is the half that puts the variation on the page; this is the half\nthat feeds it. Leave this running, open the client page, and pick a variation from the extension's\nmenu. Recompile in the studio and the page updates on its own.\n\nThe extension connects to `ws://localhost:9001` as a client, so something on your machine has to\nlisten there. A web page cannot, and the studio runs on serverless functions that cannot hold a\nconnection open — which is why this process exists. It stores nothing and holds one token.\n\n| flag | env | default |\n| --- | --- | --- |\n| `--token` | `ANACOBRA_TOKEN` | required — create one in the studio dashboard |\n| `--experiment` | `ANACOBRA_EXPERIMENT` | required — the id in the experiment's URL |\n| `--studio` | `ANACOBRA_STUDIO` | `https://anacobra-studio.vercel.app` |\n| | `ANACOBRA_BRIDGE_PORT` | `9001` |\n| | `ANACOBRA_BRIDGE_POLL_MS` | `1500` |\n\nOnly one process can hold port 9001, so if you already run a local dev server that the same\nextension connects to, stop it before starting this — they cannot both listen at once. Set\n`ANACOBRA_BRIDGE_PORT` if you need a different one.\n\n## License\n\nMIT. See [LICENSE](LICENSE).\n","readmeFilename":"README.md","_rev":"1-403a0d25b90fca3f264efdc29fce8f2e"}