{"_id":"@boundlessfi/identity-sdk","_rev":"8-61fe22e64b570bbc283624f7262a5007","name":"@boundlessfi/identity-sdk","dist-tags":{"latest":"0.1.8"},"versions":{"0.1.1":{"name":"@boundlessfi/identity-sdk","version":"0.1.1","license":"MIT","_id":"@boundlessfi/identity-sdk@0.1.1","maintainers":[{"name":"0xdevcollins","email":"collinschristroa@gmail.com"}],"dist":{"shasum":"d6417d7827b7ac25921d40d03e01f4f9bcc78de7","tarball":"https://registry.npmjs.org/@boundlessfi/identity-sdk/-/identity-sdk-0.1.1.tgz","fileCount":42,"integrity":"sha512-zAqZdThNXuIVyESwu6kIy8heF6SHxAzwq8ZF8MQzv9hnq2dOeGKQP0hEGnaQ2ZE0/Hh+ckAbzQq5KjMhJO/LqQ==","signatures":[{"sig":"MEQCICr3yVOQs3Ye4QjYYGK/QZbRjoMy5Z5ING0KI8jCrdC+AiB5xYs8t46NnU96LyKVtVRSkocFovd8EMxPjldWxUSMWg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":71415},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./server":{"types":"./dist/server/index.d.ts","import":"./dist/server/index.js"}},"gitHead":"1596e479faf6bae369c927838cf3a4114c343555","private":false,"scripts":{"dev":"tsx watch src/index.ts","build":"tsc"},"_npmUser":{"name":"0xdevcollins","email":"collinschristroa@gmail.com"},"_npmVersion":"11.7.0","directories":{},"_nodeVersion":"24.12.0","dependencies":{"better-auth":"latest","smart-account-kit":"latest","@stellar/stellar-sdk":"^14.5.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7","typescript":"^5.4"},"peerDependencies":{"smart-account-kit":">=1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/identity-sdk_0.1.1_1770196237348_0.44141793286762065","host":"s3://npm-registry-packages-npm-production"}},"0.1.2":{"name":"@boundlessfi/identity-sdk","version":"0.1.2","license":"MIT","_id":"@boundlessfi/identity-sdk@0.1.2","maintainers":[{"name":"0xdevcollins","email":"collinschristroa@gmail.com"}],"dist":{"shasum":"d99437fa7381e663c9e858cbcfeeeb9f82b20226","tarball":"https://registry.npmjs.org/@boundlessfi/identity-sdk/-/identity-sdk-0.1.2.tgz","fileCount":42,"integrity":"sha512-9useQqRSmJx7glovhvmaXg4kDcKtYVfoLNPNaAUQfYtnvVIJukDaTHG+ATbxkstk9aKT7V8A54F78YQEcWZmnA==","signatures":[{"sig":"MEUCIQDfk8Pe46rLXuNR0VN9ZoiR+Eyx/11RdOZMQFa6NId/fQIgfSrdBIKVbU0sDot4ifcCsAs1f4rTUMgzXmpUynJLJzI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":72890},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./server":{"types":"./dist/server/index.d.ts","import":"./dist/server/index.js"}},"gitHead":"1596e479faf6bae369c927838cf3a4114c343555","private":false,"scripts":{"dev":"tsx watch src/index.ts","build":"tsc"},"_npmUser":{"name":"0xdevcollins","email":"collinschristroa@gmail.com"},"_npmVersion":"11.7.0","directories":{},"_nodeVersion":"24.12.0","dependencies":{"zod":"^4.3.6","better-auth":"latest","smart-account-kit":"latest","@stellar/stellar-sdk":"^14.5.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7","typescript":"^5.4"},"peerDependencies":{"smart-account-kit":">=1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/identity-sdk_0.1.2_1770199210620_0.7435565683092651","host":"s3://npm-registry-packages-npm-production"}},"0.1.3":{"name":"@boundlessfi/identity-sdk","version":"0.1.3","license":"MIT","_id":"@boundlessfi/identity-sdk@0.1.3","maintainers":[{"name":"0xdevcollins","email":"collinschristroa@gmail.com"}],"dist":{"shasum":"11bc1861c7b98c9a6f541a7e652e598c38d42612","tarball":"https://registry.npmjs.org/@boundlessfi/identity-sdk/-/identity-sdk-0.1.3.tgz","fileCount":23,"integrity":"sha512-UZ0qbH6xalBEBxbNo6sp2SJ9aAzzjsGRxm/0jUGQav2+42HpindNE2cQtuU0bz1iGdmi4z76uhISUNb8aF92IA==","signatures":[{"sig":"MEYCIQDl+N6BRWm9+NpFCVeS6wueR6Ff8twjpn8elCcgSM/BaAIhAK6FA7y2WnkvYDPo5HLbPx9U4BXIKYzK0+k3TpNKKHBL","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":133950},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./server":{"types":"./dist/server/index.d.ts","import":"./dist/server/index.js","require":"./dist/server/index.cjs"}},"gitHead":"1596e479faf6bae369c927838cf3a4114c343555","private":false,"scripts":{"dev":"tsup --watch","build":"tsup"},"_npmUser":{"name":"0xdevcollins","email":"collinschristroa@gmail.com"},"_npmVersion":"11.7.0","directories":{},"_nodeVersion":"24.12.0","dependencies":{"zod":"^4.3.6","better-auth":"latest","smart-account-kit":"latest","@stellar/stellar-sdk":"^14.5.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7","tsup":"^8.0.2","typescript":"^5.4"},"peerDependencies":{"smart-account-kit":">=1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/identity-sdk_0.1.3_1770199836537_0.6475488279702275","host":"s3://npm-registry-packages-npm-production"}},"0.1.4":{"name":"@boundlessfi/identity-sdk","version":"0.1.4","license":"MIT","_id":"@boundlessfi/identity-sdk@0.1.4","maintainers":[{"name":"0xdevcollins","email":"collinschristroa@gmail.com"}],"dist":{"shasum":"0e546656b47fda003cbf6b1e40cd745a850c3f29","tarball":"https://registry.npmjs.org/@boundlessfi/identity-sdk/-/identity-sdk-0.1.4.tgz","fileCount":23,"integrity":"sha512-eoDJ/erIRkv/vEhJKku4OTlbIlEDWQTSk3JfKPj6p4lM6BCNz+6tSGAw6IZB9rdbZacmMZaT9I1Y8WshAcmxzA==","signatures":[{"sig":"MEUCIAHo6iDtG+0AFQuTY9SwR39hzZxl8j1jSQo/m8pdmTdqAiEAyiSObkI5RpT4A5NgYB4f0CYRJkCfreyfUw1kYHIiG7E=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":133664},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./server":{"types":"./dist/server/index.d.ts","import":"./dist/server/index.js","require":"./dist/server/index.cjs"}},"gitHead":"1596e479faf6bae369c927838cf3a4114c343555","private":false,"scripts":{"dev":"tsup --watch","build":"tsup"},"_npmUser":{"name":"0xdevcollins","email":"collinschristroa@gmail.com"},"_npmVersion":"11.7.0","directories":{},"_nodeVersion":"24.12.0","dependencies":{"zod":"^4.3.6","better-auth":"latest","smart-account-kit":"latest","@stellar/stellar-sdk":"^14.5.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7","tsup":"^8.0.2","typescript":"^5.4"},"peerDependencies":{"smart-account-kit":">=1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/identity-sdk_0.1.4_1770204633572_0.5688418871660355","host":"s3://npm-registry-packages-npm-production"}},"0.1.5":{"name":"@boundlessfi/identity-sdk","version":"0.1.5","license":"MIT","_id":"@boundlessfi/identity-sdk@0.1.5","maintainers":[{"name":"0xdevcollins","email":"collinschristroa@gmail.com"}],"dist":{"shasum":"1683447ab9c18db2767d641b46f54fdbea0a66ff","tarball":"https://registry.npmjs.org/@boundlessfi/identity-sdk/-/identity-sdk-0.1.5.tgz","fileCount":24,"integrity":"sha512-OmrG23aKBHemVqg4eWiUSdLEp5jI5QDyGFHpCL1PjQC5U7MALDpMcxXCQ168EupJKP9cXoLu4KvZEgXXYYvPBQ==","signatures":[{"sig":"MEUCICGQFgpL8k46/8k+3dGkWIJ4ab9pqip33TmPWnr4E6JGAiEAtPVT2fKftSiH1DH+cZP+j/KqDQQ+LraID5fR8n3LzyM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":138370},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./server":{"types":"./dist/server/index.d.ts","import":"./dist/server/index.js","require":"./dist/server/index.cjs"}},"gitHead":"45a0d737585c0d914e820640883025abf7d789b9","private":false,"scripts":{"dev":"tsup --watch","build":"tsup"},"_npmUser":{"name":"0xdevcollins","email":"collinschristroa@gmail.com"},"_npmVersion":"11.7.0","description":"The **Boundless Identity SDK** provides a seamless way to integrate **Passkey-based Smart Wallets** into your application. Built on top of [Smart Account Kit](https://github.com/stellar/smart-account-kit) and [Better-Auth](https://github.com/better-auth/b","directories":{},"_nodeVersion":"24.12.0","dependencies":{"zod":"^4.3.6","better-auth":"latest","smart-account-kit":"latest","@stellar/stellar-sdk":"^14.5.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7","tsup":"^8.0.2","typescript":"^5.4"},"peerDependencies":{"smart-account-kit":">=1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/identity-sdk_0.1.5_1770232130021_0.6534448555167567","host":"s3://npm-registry-packages-npm-production"}},"0.1.6":{"name":"@boundlessfi/identity-sdk","version":"0.1.6","license":"MIT","_id":"@boundlessfi/identity-sdk@0.1.6","maintainers":[{"name":"0xdevcollins","email":"collinschristroa@gmail.com"}],"dist":{"shasum":"3f5f811ed0c554441588707efe1c30cd35cca930","tarball":"https://registry.npmjs.org/@boundlessfi/identity-sdk/-/identity-sdk-0.1.6.tgz","fileCount":24,"integrity":"sha512-hHmIEXVEn4pM+E3Hwy79JcUgvglkJV/fl92FfWakaBAZJiIUaAt+JBO6cBJZKHKF6DWbN+T6cnlzbrvMOP8itQ==","signatures":[{"sig":"MEYCIQCvaNaFwKkrPOpjEcu6Yu6a1uY7nVhGWg4WZOOnJNY7UgIhAJu267AKrfkLI0RTRFk/0scucMQS/Q9cAbFSIV0J7x9X","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":138399},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./server":{"types":"./dist/server/index.d.ts","import":"./dist/server/index.js","require":"./dist/server/index.cjs"}},"gitHead":"6e1b1f6f6234c46204b8242d7f83ed0a5869914b","private":false,"scripts":{"dev":"tsup --watch","build":"tsup"},"_npmUser":{"name":"0xdevcollins","email":"collinschristroa@gmail.com"},"_npmVersion":"11.7.0","description":"The **Boundless Identity SDK** provides a seamless way to integrate **Passkey-based Smart Wallets** into your application. Built on top of [Smart Account Kit](https://github.com/stellar/smart-account-kit) and [Better-Auth](https://github.com/better-auth/b","directories":{},"_nodeVersion":"24.12.0","dependencies":{"zod":"^4.3.6","better-auth":"latest","smart-account-kit":"latest","@stellar/stellar-sdk":"^14.5.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7","tsup":"^8.0.2","typescript":"^5.4"},"peerDependencies":{"smart-account-kit":">=1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/identity-sdk_0.1.6_1770397705188_0.7540199986283942","host":"s3://npm-registry-packages-npm-production"}},"0.1.7":{"name":"@boundlessfi/identity-sdk","version":"0.1.7","license":"MIT","_id":"@boundlessfi/identity-sdk@0.1.7","maintainers":[{"name":"0xdevcollins","email":"collinschristroa@gmail.com"}],"dist":{"shasum":"abfb572b8ce6b927283a1455ca41b51919962e0d","tarball":"https://registry.npmjs.org/@boundlessfi/identity-sdk/-/identity-sdk-0.1.7.tgz","fileCount":24,"integrity":"sha512-FcBvG5lFfYdXIawXDhN+Z7x90/yCF1sqLBNadSBQ9Z2FRzQLDClbEQxa0w44OzRyVSAaQ1124vmgBIIA5JBbvw==","signatures":[{"sig":"MEYCIQDv4pRxvbwdBDEJD07KJ4LAvsVd2LPOW2/0mRYkJ+APLgIhAKZL6bCJ0HHtfMeEXbTw7xQrpNTE3+oaChAN+ifKmD+g","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":141907},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./server":{"types":"./dist/server/index.d.ts","import":"./dist/server/index.js","require":"./dist/server/index.cjs"}},"gitHead":"40c7682b584497fd6cfd9b10b48d051fef70bb63","private":false,"scripts":{"dev":"tsup --watch","build":"tsup"},"_npmUser":{"name":"0xdevcollins","email":"collinschristroa@gmail.com"},"_npmVersion":"11.7.0","description":"The **Boundless Identity SDK** provides a seamless way to integrate **Passkey-based Smart Wallets** into your application. Built on top of [Smart Account Kit](https://github.com/stellar/smart-account-kit) and [Better-Auth](https://github.com/better-auth/b","directories":{},"_nodeVersion":"24.12.0","dependencies":{"zod":"^4.3.6","better-auth":"latest","smart-account-kit":"latest","@stellar/stellar-sdk":"^14.5.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.7","tsup":"^8.0.2","typescript":"^5.4"},"peerDependencies":{"smart-account-kit":">=1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/identity-sdk_0.1.7_1770398848970_0.26923818221299856","host":"s3://npm-registry-packages-npm-production"}},"0.1.8":{"name":"@boundlessfi/identity-sdk","version":"0.1.8","private":false,"type":"module","main":"./dist/index.cjs","module":"./dist/index.js","types":"./dist/index.d.ts","exports":{".":{"import":"./dist/index.js","require":"./dist/index.cjs","types":"./dist/index.d.ts"},"./server":{"import":"./dist/server/index.js","require":"./dist/server/index.cjs","types":"./dist/server/index.d.ts"}},"dependencies":{"@stellar/stellar-sdk":"^14.5.0","better-auth":"latest","smart-account-kit":"latest","zod":"^4.3.6"},"peerDependencies":{"smart-account-kit":">=1.0.0"},"devDependencies":{"tsup":"^8.0.2","tsx":"^4.7","typescript":"^5.4"},"scripts":{"build":"tsup","dev":"tsup --watch"},"license":"MIT","gitHead":"54cf12f74ae996012e9a3e1760d7c9d0c17b074e","_id":"@boundlessfi/identity-sdk@0.1.8","description":"The **Boundless Identity SDK** provides a seamless way to integrate **Passkey-based Smart Wallets** into your application. Built on top of [Smart Account Kit](https://github.com/stellar/smart-account-kit) and [Better-Auth](https://github.com/better-auth/b","_nodeVersion":"24.12.0","_npmVersion":"11.7.0","dist":{"integrity":"sha512-UD8lVOkURzSpkaIIN6KNRZF1S3CG21SuRvIRTwzwWJJQB0o5jAP6nafBcSEG4euzese1ev74G/+Qrsn0g1ycnw==","shasum":"c172a63684e481b2e112e633ce3b364a54f193ee","tarball":"https://registry.npmjs.org/@boundlessfi/identity-sdk/-/identity-sdk-0.1.8.tgz","fileCount":24,"unpackedSize":166050,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIDAKrd+ggIssiOSXF/Yxz3xmG/fD17ZrE+UVqV4Fxf92AiB5HnJMiwhikpJZUtIhSqygvdU5PBpueZoS6YyzaE9WCQ=="}]},"_npmUser":{"name":"0xdevcollins","email":"collinschristroa@gmail.com"},"directories":{},"maintainers":[{"name":"0xdevcollins","email":"collinschristroa@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/identity-sdk_0.1.8_1770574265379_0.0030486126548729953"},"_hasShrinkwrap":false}},"time":{"created":"2026-02-04T09:10:37.293Z","modified":"2026-02-08T18:11:05.669Z","0.1.1":"2026-02-04T09:10:37.505Z","0.1.2":"2026-02-04T10:00:10.745Z","0.1.3":"2026-02-04T10:10:36.679Z","0.1.4":"2026-02-04T11:30:33.720Z","0.1.5":"2026-02-04T19:08:50.191Z","0.1.6":"2026-02-06T17:08:25.346Z","0.1.7":"2026-02-06T17:27:29.120Z","0.1.8":"2026-02-08T18:11:05.521Z"},"license":"MIT","description":"The **Boundless Identity SDK** provides a seamless way to integrate **Passkey-based Smart Wallets** into your application. Built on top of [Smart Account Kit](https://github.com/stellar/smart-account-kit) and [Better-Auth](https://github.com/better-auth/b","maintainers":[{"name":"0xdevcollins","email":"collinschristroa@gmail.com"}],"readme":"# @boundlessfi/identity-sdk\n\nThe **Boundless Identity SDK** provides a seamless way to integrate **Passkey-based Smart Wallets** into your application. Built on top of [Smart Account Kit](https://github.com/stellar/smart-account-kit) and [Better-Auth](https://github.com/better-auth/better-auth), it enables users to sign up with a passkey, automatically deploying a non-custodial Stellar Smart Wallet that is linked to their authenticated session.\n\n## Features\n\n- 🔑 **Passkey-First Authentication**: Users log in and sign transactions using FaceID, TouchID, or other WebAuthn credentials.\n- 🔗 **Session Linking**: Automatically links on-chain smart wallets to your application's user database via Better-Auth.\n- 💳 **Smart Wallet Management**: Deploy contracts, track balances, and transfer assets (XLM & Custom Tokens).\n- 🛡️ **Recovery**: Add multiple passkeys for account recovery.\n- ⛽ **Gas & Fees**: Optimized wrapper for transaction submission.\n\n---\n\n## Installation\n\n```bash\nnpm install @boundlessfi/identity-sdk\n# or\npnpm add @boundlessfi/identity-sdk\n```\n\n### Peer Dependencies\n\nEnsure you have the following peer dependencies installed:\n\n```bash\nnpm install better-auth smart-account-kit\n```\n\n---\n\n## Backend Integration\n\nThe SDK provides a **Better-Auth Plugin** to handle linking Stellar addresses and Passkey credentials to your users.\n\n### 1. Register the Plugin\n\nIn your Better-Auth configuration (e.g., `auth.ts`):\n\n```typescript\nimport { betterAuth } from \"better-auth\";\nimport { boundlessStellarPlugin } from \"@boundlessfi/identity-sdk/server\";\n\nexport const auth = betterAuth({\n  // ... your other config\n  plugins: [\n    boundlessStellarPlugin(), // <--- Add this\n  ],\n});\n```\n\nThis plugin automatically adds `stellarAddress` and `credentialId` fields to your User schema and exposes the `/api/auth/stellar/link` endpoint.\n\n---\n\n## Frontend Usage\n\n### 1. Initialize the SDK\n\nCreate an instance of `BoundlessSDK` in your application (e.g., via a React Context or global singleton).\n\n```typescript\nimport { BoundlessSDK } from \"@boundlessfi/identity-sdk\";\n\nconst boundless = new BoundlessSDK({\n  network: \"testnet\", // or \"mainnet\"\n  rpcUrl: \"https://soroban-testnet.stellar.org\", // Optional, defaults to Horizon\n  backendUrl: \"http://localhost:3000\", // Your Better-Auth API base URL\n  rpId: \"localhost\", // WebAuthn Relying Party ID (domain)\n  rpName: \"My App\", // App Name for Passkey Prompt\n  // relayerProxyUrl: \"...\" // Optional: For gas sponsorship\n});\n```\n\n### 2. Connect or Register a Wallet\n\n#### Connect (Returning User)\n\nPrompts the user to sign in with an existing passkey. Checks if a wallet is already deployed.\n\n```typescript\nconst result = await boundless.connect();\n// Or force the browser prompt:\n// const result = await boundless.connect({ prompt: true });\n\nif (result) {\n  console.log(\"Connected:\", result.walletAddress);\n}\n```\n\n#### Register (New User)\n\nCreates a new Passkey credential, deploys the Smart Wallet on-chain, and links it to the current auth session.\n> **Note:** The user must be logged into Better-Auth before calling `register`.\n\n```typescript\ntry {\n  const result = await boundless.register(\"user_email_or_name\");\n  console.log(\"New Wallet Deployed:\", result.walletAddress);\n} catch (error) {\n  console.error(\"Registration failed:\", error);\n}\n```\n\n### 3. Check Balances\n\nFetch Native XLM or Custom Token balances.\n\n```typescript\n// Native XLM\nconst xlmBalance = await boundless.getBalance(userAddress);\n\n// Custom Token (by Contract ID)\nconst usdcBalance = await boundless.getBalance(userAddress, \"CDLZFC3SYJYDZS7K67TZIK764C4UGR2HXQ4Q47I2255W577333N3K...\");\n\n// Custom Token (by Asset Code:Issuer)\nconst tokenBalance = await boundless.getBalance(userAddress, \"USDC:GBBD47IF...\");\n```\n\n### 4. Send Transactions\n\nTransfer XLM or Tokens.\n\n```typescript\nconst txResult = await boundless.transfer(\n  \"G...\", // Recipient Address\n  \"10.5\", // Amount\n  \"XLM\"   // Asset (or Contract ID / Code:Issuer)\n);\n\nif (txResult.success) {\n  console.log(\"Tx Hash:\", txResult.hash);\n}\n```\n\n### 5. Account Recovery\n\nAdd a secondary passkey (e.g., iCloud Keychain or YubiKey) to ensure access isn't lost.\n\n```typescript\nawait boundless.addRecoveryKey({\n  appName: \"My App\",\n  userName: \"user@example.com\",\n  nickname: \"Backup Key\"\n});\n```\n\n### 6. Using with TrustlessWork (G-Address Bridge)\n\nTrustlessWork and other Stellar APIs require G-addresses (classic accounts) for role assignment. Smart Accounts use C-addresses, which cannot be used directly.\n\nThe SDK provides a **delegated account pattern**:\n\n1. Create a G-address that your Smart Account controls:\n\n   ```ts\n   const { gAddress, secretKey } = await boundless.createDelegatedAccount({ autoFund: true });\n   ```\n\n2. Store the `secretKey` securely in your backend (encrypted).\n\n3. Use the `gAddress` when calling TrustlessWork APIs.\n\n4. Funds remain in the Smart Account. The G-address only signs escrow milestones.\n\n**Security Note:** The G-address cannot transfer funds from the Smart Account without the user's passkey approval. It is a signing-only delegate.\n\n---\n\n## Advanced Usage\n\n### Accessing Internal Tools\n\nYou can access the underlying `SmartAccountKit` instance for lower-level operations.\n\n```typescript\nconst kit = boundless.smartAccountKit;\n// Use kit directly...\n```\n\n### Events\n\nListen to wallet events for UI updates.\n\n```typescript\nconst unsubscribe = boundless.onEvent(\"walletConnected\", () => {\n  console.log(\"Wallet connected!\");\n});\n```\n\n## License\n\nMIT\n","readmeFilename":"README.md"}