{"_id":"@blueshift-gg/doppler-web3js","_rev":"3-78a3919c5c3bad1afa5c8dd753742984","name":"@blueshift-gg/doppler-web3js","dist-tags":{"latest":"0.0.3"},"versions":{"0.0.1":{"name":"@blueshift-gg/doppler-web3js","version":"0.0.1","license":"MIT","_id":"@blueshift-gg/doppler-web3js@0.0.1","maintainers":[{"name":"deanmlittle","email":"hi@deanlittle.com"},{"name":"jyezy","email":"webjyezy@gmail.com"},{"name":"dhkl","email":"david@davidslab.com"}],"homepage":"https://github.com/blueshift-gg/doppler#readme","bugs":{"url":"https://github.com/blueshift-gg/doppler/issues"},"dist":{"shasum":"1e1b70c731786fe1ae247a166d250e6642e51b6b","tarball":"https://registry.npmjs.org/@blueshift-gg/doppler-web3js/-/doppler-web3js-0.0.1.tgz","fileCount":2,"integrity":"sha512-XPHwK83vdqzUC6rRysfUF6sa+RhKtdERBeis/gIi8PraHD6BJLYGA4aIevUOPwPgCZ5Ydq2eyH1oEDyDB8YLwg==","signatures":[{"sig":"MEUCIQCT2cExJFVw22nLUVpcEKzS8QttLe6cEGqTLkwrKzOIaAIgGGFqDhBP8KjR4ndFDMEgkTGCndTLV6ssP4r5Ze3E2kw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2590},"type":"module","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"cf96ab636a442a4dcbe213da73c0377b081f22d6","scripts":{"build":"rolldown -c rolldown.config.ts","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"dhkl","email":"david@davidslab.com"},"repository":{"url":"git+https://github.com/blueshift-gg/doppler.git","type":"git","directory":"sdk/typescript/web3js"},"_npmVersion":"11.6.2","description":"Doppler oracle SDK for @solana/web3.js","directories":{},"_nodeVersion":"24.12.0","dependencies":{"@blueshift-gg/doppler-common":"workspace:*"},"_hasShrinkwrap":false,"devDependencies":{"rolldown":"1.1.0","typescript":"6.0.3","@solana/web3.js":"3.0.0-rc.2","rolldown-plugin-dts":"0.25.2"},"peerDependencies":{"typescript":"^6","@solana/web3.js":"^3.0.0"},"peerDependenciesMeta":{"typescript":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/doppler-web3js_0.0.1_1782414354924_0.8816288101016592","host":"s3://npm-registry-packages-npm-production"}},"0.0.2":{"name":"@blueshift-gg/doppler-web3js","version":"0.0.2","license":"MIT","_id":"@blueshift-gg/doppler-web3js@0.0.2","maintainers":[{"name":"deanmlittle","email":"hi@deanlittle.com"},{"name":"jyezy","email":"webjyezy@gmail.com"},{"name":"dhkl","email":"david@davidslab.com"}],"homepage":"https://github.com/blueshift-gg/doppler#readme","bugs":{"url":"https://github.com/blueshift-gg/doppler/issues"},"dist":{"shasum":"9a0a60849567d5a77218b25b878d6378f639a455","tarball":"https://registry.npmjs.org/@blueshift-gg/doppler-web3js/-/doppler-web3js-0.0.2.tgz","fileCount":2,"integrity":"sha512-Rvtzx2PmpixgcYqUMhZlWZMsbNySKoX7KM9LaIKwMBejesEeQZKe9UNpSw4+zs9TNBUrfBczyYAlrq5XqTac6g==","signatures":[{"sig":"MEYCIQCoMCsFuwFtE7onf0jSWY+TtZAdV70c/RF0SddaVLOwDwIhAN2Fb3AOZJB5NSVYfhGiKUP5SRI/pODn6B1TdL8W1Z69","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2539},"type":"module","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"ad5bb9a1913a071a7ea7e4d093fc358e8dc26ce4","scripts":{"build":"rolldown -c rolldown.config.ts","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"dhkl","email":"david@davidslab.com"},"repository":{"url":"git+https://github.com/blueshift-gg/doppler.git","type":"git","directory":"sdk/typescript/web3js"},"_npmVersion":"11.6.2","description":"Doppler oracle SDK for @solana/web3.js","directories":{},"_nodeVersion":"24.12.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"rolldown":"1.1.0","typescript":"6.0.3","@solana/web3.js":"3.0.0-rc.2","rolldown-plugin-dts":"0.25.2","@blueshift-gg/doppler-common":"workspace:*"},"peerDependencies":{"typescript":"^6","@solana/web3.js":"^3.0.0"},"peerDependenciesMeta":{"typescript":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/doppler-web3js_0.0.2_1782466674529_0.9870858174346095","host":"s3://npm-registry-packages-npm-production"}},"0.0.3":{"name":"@blueshift-gg/doppler-web3js","version":"0.0.3","description":"Doppler oracle SDK for @solana/web3.js","type":"module","license":"MIT","repository":{"type":"git","url":"git+https://github.com/blueshift-gg/doppler.git","directory":"sdk/typescript/web3js"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"publishConfig":{"access":"public"},"scripts":{"build":"rolldown -c rolldown.config.ts","typecheck":"tsc -p tsconfig.json --noEmit","prepublishOnly":"bun run typecheck && bun run build"},"devDependencies":{"@blueshift-gg/doppler-common":"workspace:*","@solana/web3.js":"3.0.0-rc.2","rolldown":"1.1.0","rolldown-plugin-dts":"0.25.2","typescript":"6.0.3"},"peerDependencies":{"@solana/web3.js":"^3.0.0","typescript":"^6"},"peerDependenciesMeta":{"typescript":{"optional":true}},"gitHead":"daeb483458d9528a123bb0f830665106bba6bb1d","_id":"@blueshift-gg/doppler-web3js@0.0.3","bugs":{"url":"https://github.com/blueshift-gg/doppler/issues"},"homepage":"https://github.com/blueshift-gg/doppler#readme","_nodeVersion":"24.12.0","_npmVersion":"11.6.2","dist":{"integrity":"sha512-D7weiCLSVNI3bL/NyEJkEQDsa1W8WATj8EWzIBmwJKaqa6CeSHSmGNZXDa8EqVTvODy86zq7ymkQn094Ogxu+w==","shasum":"44afd17dd0eeb5befd4fe5965eee5d908c617e7f","tarball":"https://registry.npmjs.org/@blueshift-gg/doppler-web3js/-/doppler-web3js-0.0.3.tgz","fileCount":6,"unpackedSize":188513,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQDm9YyiIa8mIhiJPyLSdKcj+0T3sAnpXMk34Cd+WYiShAIgb3ex5PLz/lwZ47ISTPDClkRKXyzX5ENeUwVHsRjme7A="}]},"_npmUser":{"name":"dhkl","email":"david@davidslab.com"},"directories":{},"maintainers":[{"name":"deanmlittle","email":"hi@deanlittle.com"},{"name":"jyezy","email":"webjyezy@gmail.com"},{"name":"dhkl","email":"david@davidslab.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/doppler-web3js_0.0.3_1782470742407_0.443920311816806"},"_hasShrinkwrap":false}},"time":{"created":"2026-06-25T19:05:54.669Z","modified":"2026-06-26T10:45:42.737Z","0.0.1":"2026-06-25T19:05:55.046Z","0.0.2":"2026-06-26T09:37:54.642Z","0.0.3":"2026-06-26T10:45:42.566Z"},"bugs":{"url":"https://github.com/blueshift-gg/doppler/issues"},"license":"MIT","homepage":"https://github.com/blueshift-gg/doppler#readme","repository":{"type":"git","url":"git+https://github.com/blueshift-gg/doppler.git","directory":"sdk/typescript/web3js"},"description":"Doppler oracle SDK for @solana/web3.js","maintainers":[{"name":"deanmlittle","email":"hi@deanlittle.com"},{"name":"jyezy","email":"webjyezy@gmail.com"},{"name":"dhkl","email":"david@davidslab.com"}],"readme":"# @blueshift-gg/doppler-web3js\n\nDoppler oracle SDK for applications using `@solana/web3.js`.\n\n## Install\n\n```bash\nnpm install @blueshift-gg/doppler-web3js @solana/web3.js\n```\n\n## Usage\n\n```ts\nimport { Doppler, priceFeedCodec } from \"@blueshift-gg/doppler-web3js\";\nimport { Connection, Keypair, Transaction } from \"@solana/web3.js\";\n\nconst connection = new Connection(\"https://api.mainnet-beta.solana.com\");\nconst signer = Keypair.fromSecretKey(secretKeyBytes);\nconst programId = \"11111111111111111111111111111111\";\n\nconst client = new Doppler(connection, {\n  programId,\n  admin: signer.publicKey,\n  payloadCodec: priceFeedCodec,\n});\n\nconst { oraclePubkey, instruction: createInstruction } = await client.createOracleAccount(\n  \"my-oracle\",\n  signer.publicKey,\n);\n\nconst updateInstructions = client.createUpdateInstructions(\n  [\n    {\n      oraclePubkey,\n      oracle: {\n        sequence: 1n,\n        payload: { price: 42_000_000n },\n      },\n    },\n  ],\n  1_000n,\n);\n\nconst { blockhash, lastValidBlockHeight } = await connection.getLatestBlockhash();\nconst transaction = new Transaction({\n  feePayer: signer.publicKey,\n  blockhash,\n  lastValidBlockHeight,\n}).add(createInstruction, ...updateInstructions);\n\nawait transaction.sign(signer);\nawait connection.sendRawTransaction(await transaction.serialize());\n\nconst oracle = await client.fetchOracle(oraclePubkey);\n\nconst subscription = client.subscribeToOracle(oraclePubkey);\nfor await (const update of subscription.notifications) {\n  console.log(update.payload.price);\n}\n\nawait subscription.unsubscribe();\n```\n","readmeFilename":"README.md"}