{"_rev":"16-6101e25eae61187b9c8abe6619c90739","time":{"created":"2025-07-02T09:37:08.292Z","modified":"2025-07-02T09:37:08.868Z","0.3.0":"2025-06-23T09:24:27.704Z","0.3.1":"2025-06-23T12:01:45.172Z","0.3.2":"2025-06-23T12:09:52.808Z","0.3.3":"2025-06-30T06:35:28.314Z","0.0.1":"2025-07-01T04:06:20.403Z","1.0.0":"2025-07-01T04:25:49.268Z","0.4.3":"2025-07-01T12:17:52.254Z","0.4.2":"2025-07-02T05:18:50.208Z","0.0.0":"2025-07-02T09:37:08.593Z"},"_id":"@aiquant/minswap-sdk","name":"@aiquant/minswap-sdk","dist-tags":{"latest":"0.0.0"},"versions":{"0.0.0":{"name":"@aiquant/minswap-sdk","version":"0.0.0","description":"Query Minswap data and build transactions","main":"./build/cjs/index.es.js","module":"./build/index.es.js","types":"./build/index.d.ts","exports":{".":{"require":"./build/cjs/index.es.js","import":"./build/index.es.js","types":"./build/index.d.ts"}},"scripts":{"build":"rimraf build && rollup -c rollup.config.js","test":"NODE_OPTIONS=--experimental-vm-modules jest && tsc","lint":"eslint src --ext .ts","format":"prettier --write **/*.ts && eslint src --fix --ext .ts","check-format":"prettier --check **/*.ts && eslint src --ext .ts","exec":"ts-node --esm --experimental-specifier-resolution=node"},"keywords":["minswap","cardano","blockfrost","dex","blockchain","lucid"],"author":{"name":"Minswap Labs"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/minswap/sdk.git"},"bugs":{"url":"https://github.com/minswap/sdk/issues"},"homepage":"https://github.com/minswap/sdk#readme","dependencies":{"@blockfrost/blockfrost-js":"^5.3.1","@minswap/tiny-invariant":"^1.2.0","big.js":"^6.1.1","@aiquant/lucid-cardano":"^0.10.10","sha3":"^2.1.4"},"devDependencies":{"@types/big.js":"^6.1.3","@types/jest":"^27.5.2","@types/json-bigint":"^1.0.1","@typescript-eslint/eslint-plugin":"^5.20.0","@typescript-eslint/parser":"^5.20.0","esbuild":"^0.14.38","eslint":"^8.13.0","eslint-plugin-simple-import-sort":"^7.0.0","eslint-plugin-unicorn":"^48.0.1","eslint-plugin-unused-imports":"^2.0.0","jest":"^29.3.1","json-bigint":"^1.0.0","prettier":"3.0.0","rollup":"^2.70.2","rollup-plugin-dts":"^4.2.1","rollup-plugin-esbuild":"^4.9.1","ts-jest":"^29.1.1","ts-node":"^10.9.1","typescript":"^4.6.3"},"_id":"@aiquant/minswap-sdk@0.0.0","_nodeVersion":"20.18.2","_npmVersion":"11.4.2","dist":{"integrity":"sha512-wCVepFXHRC4d7tyLJ4uDsHn0KgQKZuKicR4U4xkkXfdwJv7C621Ki9gWw1JawFm6wBuyntmVmZAnm3JCNcyQLQ==","shasum":"613da1efaba84235850a08b7b01f1fbaafbff583","tarball":"https://registry.npmjs.org/@aiquant/minswap-sdk/-/minswap-sdk-0.0.0.tgz","fileCount":7,"unpackedSize":300792,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIES6dxqfP3/kxq/jHceb7Alqc9qPXdq+chPSAfHrm5FIAiEAxF89j7KYpm4g3wcnFvRIrW932L60ELwDqRr1T6r9/NA="}]},"_npmUser":{"name":"aiquant","email":"rayan.ahmad@aiquantgroup.com","actor":{"name":"aiquant","email":"rayan.ahmad@aiquantgroup.com","type":"user"}},"directories":{},"maintainers":[{"name":"aiquant","email":"rayan.ahmad@aiquantgroup.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/minswap-sdk_0.0.0_1751449028381_0.7754354534418728"},"_hasShrinkwrap":false}},"maintainers":[{"name":"aiquant","email":"rayan.ahmad@aiquantgroup.com"}],"description":"Query Minswap data and build transactions","homepage":"https://github.com/minswap/sdk#readme","keywords":["minswap","cardano","blockfrost","dex","blockchain","lucid"],"repository":{"type":"git","url":"git+https://github.com/minswap/sdk.git"},"author":{"name":"Minswap Labs"},"bugs":{"url":"https://github.com/minswap/sdk/issues"},"license":"MIT","readme":"# Minswap SDK (CommonJS & ESM)\n\n> Official fork of the Minswap SDK with dual build support for CommonJS (CJS) and ECMAScript Modules (ESM).\n\nThis package provides both the CommonJS and ESM distributions of the Minswap SDK, ensuring compatibility across Node.js environments that do **and** do **not** use ES Modules.\n\n---\n\n## Overview\n\nThe Minswap open-source SDK offers off-chain tooling to interact with the Minswap DEX. It supports:\n\n* Stableswap\n* AMM V1\n* AMM V2\n* LBE V2\n\nFeatures include pool price feeds, trade simulations, transaction builders, and historical data access.\n\n---\n\n## Features\n\n* [x] Pool price feed\n* [x] Historical pool data\n* [x] Calculate trade price & impact\n* [x] Build and submit orders via Lucid\n* [x] Syncer for liquidity pool data\n\n---\n\n## Install\n\nChoose the package that matches your project setup:\n\n| Build | Install Command                    | Usage                                              |\n| ----- | ---------------------------------- | -------------------------------------------------- |\n| CJS   | `npm install @aiquant/minswap-sdk` | `const { ... } = require(\"@aiquant/minswap-sdk\");` |\n| ESM   | `npm install @aiquant/minswap-sdk` | `import { ... } from \"@aiquant/minswap-sdk\";`      |\n| PNPM  | `pnpm add @aiquant/minswap-sdk`    | Supports both CJS & ESM                            |\n| Yarn  | `yarn add @aiquant/minswap-sdk`    | Supports both CJS & ESM                            |\n\n---\n\n## Usage Examples\n\n### Example 1: Get Current MIN/ADA Price\n\n```ts\nimport { BlockFrostAPI } from \"@blockfrost/blockfrost-js\";\nimport { BlockfrostAdapter } from \"@aiquant/minswap-sdk\";  // forked package\n\nconst api = new BlockfrostAdapter({\n  blockFrost: new BlockFrostAPI({\n    projectId: \"<your_project_id>\",\n    network: \"mainnet\",\n  }),\n});\n\nconst [adaPerMin, minPerAda] = await api.getPoolPrice({ pool: await api.getV1PoolById({ id: \"<poolId>\" }) });\nconsole.log(`ADA/MIN: ${adaPerMin.toString()}, MIN/ADA: ${minPerAda.toString()}`);\n```\n\n### Example 2: Historical Price History\n\n```ts\nimport { BlockFrostAPI } from \"@blockfrost/blockfrost-js\";\nimport { BlockfrostAdapter, NetworkId } from \"@aiquant/minswap-sdk\";\n\nconst api = new BlockfrostAdapter({ /* ... */ });\nconst history = await api.getPoolHistory({ id: \"<poolId>\" });\nfor (const point of history) {\n  const pool = await api.getPoolInTx({ txHash: point.txHash });\n  const [priceA, priceB] = await api.getPoolPrice({ pool, decimalsA: 6, decimalsB: 6 });\n  console.log(`${point.time}: ADA/MIN=${priceA}, MIN/ADA=${priceB}`);\n}\n```\n\n### Example 3: Build & Submit Swap Order\n\n```ts\nimport { Lucid, Blockfrost } from \"@aiquant/lucid-cardano\";\nimport { BlockfrostAdapter, Dex } from \"@aiquant/minswap-sdk\";\n\nconst lucid = await Lucid.new(new Blockfrost(\"...\", \"<id>\"), \"Mainnet\");\nconst adapter = new BlockfrostAdapter({ /* ... */ });\n\nconst { poolState, poolDatum } = await api.getPoolById({ id: \"<poolId>\" });\nconst dex = new Dex(lucid);\n\nconst tx = await dex.buildSwapExactOutTx({ /* parameters */ }).sign().complete();\nconst hash = await tx.submit();\nconsole.log(\"Swap tx hash:\", hash);\n```\n\n---\n\n## Contributing\n\nContributions welcome! Please see our [CONTRIBUTING.md](./CONTRIBUTING.md).\n\n---\n\n## License\n\nMIT © Minswap Labs\n","readmeFilename":"README.md"}