{"_id":"@atomicprotocol/sdk","_rev":"2-309268d3b4cbc2d5e23b57771193aafe","name":"@atomicprotocol/sdk","dist-tags":{"latest":"0.2.1"},"versions":{"0.2.0":{"name":"@atomicprotocol/sdk","version":"0.2.0","license":"MIT","_id":"@atomicprotocol/sdk@0.2.0","maintainers":[{"name":"davidpere","email":"davidopuene8@gmail.com"}],"homepage":"https://github.com/atomiclabs/atomic#readme","bugs":{"url":"https://github.com/atomiclabs/atomic/issues"},"dist":{"shasum":"dc0890a20d6c9605435bc98aa02374e84fb5063b","tarball":"https://registry.npmjs.org/@atomicprotocol/sdk/-/sdk-0.2.0.tgz","fileCount":62,"integrity":"sha512-MCK7AbK10xu4ALshb1Pwf+aQ/OrilHpV253pzfovirRWBVQmXjkDNxeKcorldPvrRSbI5HT2wYRl0D3XtnSDOQ==","signatures":[{"sig":"MEUCIQDxLgGLNEd47/oWeZ9atvSuwqWhb6BCQABkShHD4ZibRAIgY1w71r896u2gVfJaDO8edzJc7O5RlfdcMJ2yFztDWU4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":88795},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./events":{"types":"./dist/events/index.d.ts","import":"./dist/events/index.js"},"./indexer":{"types":"./dist/indexer/index.d.ts","import":"./dist/indexer/index.js"},"./conviction":{"types":"./dist/conviction/index.d.ts","import":"./dist/conviction/index.js"}},"gitHead":"6d0f5e36538685304890c14310f1885629069e0b","scripts":{"test":"vitest run","build":"tsc -p tsconfig.json","typecheck":"tsc -p tsconfig.json --noEmit","test:watch":"vitest"},"_npmUser":{"name":"davidpere","email":"davidopuene8@gmail.com"},"repository":{"url":"git+https://github.com/atomiclabs/atomic.git","type":"git","directory":"packages/sdk"},"_npmVersion":"10.9.8","description":"TypeScript SDK for Atomic Proof of Conviction — read API, event parsers, and indexer adapters","directories":{},"_nodeVersion":"22.22.3","dependencies":{"@solana/web3.js":"1.98.4","@coral-xyz/anchor":"^0.32.1"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.2.6","typescript":"^5"},"_npmOperationalInternal":{"tmp":"tmp/sdk_0.2.0_1782925873876_0.8442559363547146","host":"s3://npm-registry-packages-npm-production"}},"0.2.1":{"name":"@atomicprotocol/sdk","version":"0.2.1","description":"TypeScript SDK for Atomic Proof of Conviction — read API, event parsers, and indexer adapters","type":"module","license":"MIT","repository":{"type":"git","url":"git+https://github.com/atomiclabs/atomic.git","directory":"packages/sdk"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./indexer":{"types":"./dist/indexer/index.d.ts","import":"./dist/indexer/index.js"},"./conviction":{"types":"./dist/conviction/index.d.ts","import":"./dist/conviction/index.js"},"./events":{"types":"./dist/events/index.d.ts","import":"./dist/events/index.js"}},"main":"./dist/index.js","types":"./dist/index.d.ts","scripts":{"build":"tsc -p tsconfig.json","typecheck":"tsc -p tsconfig.json --noEmit","test":"vitest run","test:watch":"vitest"},"dependencies":{"@coral-xyz/anchor":"^0.32.1","@solana/web3.js":"1.98.4"},"devDependencies":{"typescript":"^5","vitest":"^3.2.6"},"engines":{"node":">=20"},"_id":"@atomicprotocol/sdk@0.2.1","gitHead":"8c0018ff0adceecb79fb73629a4ebeb51d9f44e0","bugs":{"url":"https://github.com/atomiclabs/atomic/issues"},"homepage":"https://github.com/atomiclabs/atomic#readme","_nodeVersion":"22.22.3","_npmVersion":"10.9.8","dist":{"integrity":"sha512-443lwn1Zlf9noVrAHRXIa6ndZySvp/M1iVpAwFdEdJFeDXnEpP9V3+askw6ApvDKlCpTOBYbYW52QpnmaYT5TQ==","shasum":"491b18fd0a26fd8395410f0512aafe4459b5c1fb","tarball":"https://registry.npmjs.org/@atomicprotocol/sdk/-/sdk-0.2.1.tgz","fileCount":62,"unpackedSize":88869,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIDz0LJxDtHtB0Rzq7rYf+kkwfmdC/pvsMoVN/u2hOi1NAiA5eg+PFDk9y1y9JDUnz8q9yNI5bLUKtGM7MajVsn/DEQ=="}]},"_npmUser":{"name":"davidpere","email":"davidopuene8@gmail.com"},"directories":{},"maintainers":[{"name":"davidpere","email":"davidopuene8@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/sdk_0.2.1_1782938080583_0.23597579471270413"},"_hasShrinkwrap":false}},"time":{"created":"2026-07-01T17:11:13.675Z","modified":"2026-07-01T20:34:40.863Z","0.2.0":"2026-07-01T17:11:14.015Z","0.2.1":"2026-07-01T20:34:40.745Z"},"bugs":{"url":"https://github.com/atomiclabs/atomic/issues"},"license":"MIT","homepage":"https://github.com/atomiclabs/atomic#readme","repository":{"type":"git","url":"git+https://github.com/atomiclabs/atomic.git","directory":"packages/sdk"},"description":"TypeScript SDK for Atomic Proof of Conviction — read API, event parsers, and indexer adapters","maintainers":[{"name":"davidpere","email":"davidopuene8@gmail.com"}],"readme":"# @atomiclabs/sdk\n\nTypeScript SDK for the Atomic Proof of Conviction protocol.\n\n## Install\n\n```bash\nnpm install @atomiclabs/sdk\n```\n\n## Quick start\n\n```typescript\nimport { AtomicClient } from \"@atomiclabs/sdk\";\n\nconst atomic = AtomicClient.fromApiKey(process.env.ATOMIC_API_KEY!);\n\nconst token = await atomic.getTokenConviction(\"YourMintAddress...\");\nconst history = await atomic.getPcwHistory(\"YourMintAddress...\");\nconst boards = await atomic.getLeaderboards();\n```\n\n## Bring-your-own indexer\n\nParse on-chain events and pipe them into your database:\n\n```typescript\nimport {\n  parseEventsFromTransaction,\n  processChainEvents,\n  MemoryIndexerAdapter,\n} from \"@atomiclabs/sdk\";\n\nconst events = parseEventsFromTransaction({\n  logs: tx.meta.logMessages,\n  signature: tx.transaction.signatures[0],\n  slot: tx.slot,\n  programId: \"YourProgramId...\",\n});\n\nconst adapter = new MemoryIndexerAdapter();\nawait processChainEvents(adapter, events);\n```\n\nImplement `IndexerAdapter` for Postgres, ClickHouse, etc. See `docs/developer/indexer-adapters.md`.\n\n## Subpath exports\n\n| Import | Purpose |\n|--------|---------|\n| `@atomiclabs/sdk` | Umbrella client + types + formatters |\n| `@atomiclabs/sdk/conviction` | PCW / CW metrics (`ConvictionClient`) |\n| `@atomiclabs/sdk/events` | Event parsers |\n| `@atomiclabs/sdk/indexer` | Indexer pipeline + adapters |\n\n### Conviction module (PCW)\n\n```typescript\nimport { ConvictionClient } from \"@atomiclabs/sdk/conviction\";\n\nconst conviction = ConvictionClient.fromApiKey(process.env.ATOMIC_API_KEY!);\nconst { pcw } = await conviction.getPcw(\"YourMint...\");\nconst history = await conviction.getPcwHistory(\"YourMint...\", 200);\n```\n\nOr via the umbrella client: `atomic.conviction.getPcw(mint)`.\n\n## License\n\nMIT\n","readmeFilename":"README.md"}