{"id":24102768,"url":"https://github.com/kilnfi/sdk-js","last_synced_at":"2026-01-19T17:06:53.771Z","repository":{"id":148390302,"uuid":"416652986","full_name":"kilnfi/sdk-js","owner":"kilnfi","description":"Kiln Connect SDK","archived":false,"fork":false,"pushed_at":"2026-01-15T11:29:29.000Z","size":2390,"stargazers_count":4,"open_issues_count":0,"forks_count":3,"subscribers_count":4,"default_branch":"main","last_synced_at":"2026-01-15T16:25:06.821Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://www.npmjs.com/package/@kilnfi/sdk","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/kilnfi.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2021-10-13T08:32:20.000Z","updated_at":"2026-01-15T11:14:15.000Z","dependencies_parsed_at":"2023-05-19T23:45:45.384Z","dependency_job_id":"ac5dd5c3-9032-46d1-89b3-7509c0eb1704","html_url":"https://github.com/kilnfi/sdk-js","commit_stats":null,"previous_names":[],"tags_count":173,"template":false,"template_full_name":null,"purl":"pkg:github/kilnfi/sdk-js","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kilnfi%2Fsdk-js","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kilnfi%2Fsdk-js/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kilnfi%2Fsdk-js/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kilnfi%2Fsdk-js/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kilnfi","download_url":"https://codeload.github.com/kilnfi/sdk-js/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kilnfi%2Fsdk-js/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28508485,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-17T11:50:55.898Z","status":"ssl_error","status_checked_at":"2026-01-17T11:50:55.569Z","response_time":85,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-01-10T18:29:20.883Z","updated_at":"2026-01-17T12:37:51.096Z","avatar_url":"https://github.com/kilnfi.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"## Description\n\nKiln SDK is a wrapper around the Kiln Connect API, which allows you to craft staking transactions as well getting real time and historical data about your stakes.\n\nOn top of that, the SDK provides a way to sign your transactions with Fireblocks using their Contract call and Raw Signing features. \n\n- [Kiln Connect documentation](https://docs.kiln.fi/v1/connect/overview)\n- [OpenAPI reference](https://docs.api.kiln.fi/reference/getaccounts)\n\n## Installation\n\nYou can install the JS SDK with your favorite package manager:\n\n```sh\nbun install @kilnfi/sdk\n```\n\n## Setup\n\nIn order to use this sdk, you will need a kiln api token.\nPlease contact support@kiln.fi to get one.\n\n## Example: Stake 1 NEAR using Fireblocks raw signing\n```typescript\nimport { Kiln, KILN_VALIDATORS } from '@kilnfi/sdk';\nimport type { FireblocksIntegration } from '@kilnfi/sdk/fireblocks.ts';\nimport { loadEnv } from './env.ts';\nimport { parseUnits } from \"viem\";\n\nconst k = new Kiln({\n  baseUrl: 'https://api.kiln.fi/v1',\n  apiToken: process.env.KILN_API_TOKEN,\n});\n\nconst apiSecret = fs.readFileSync(__dirname + '/fireblocks_secret.key', 'utf8');\n\nconst vault: FireblocksIntegration = {\n  config: {\n    apiKey: process.env.FIREBLOCKS_API_KEY,\n    secretKey: apiSecret,\n    basePath: 'https://api.fireblocks.io/v1',\n  },\n  vaultId: process.env.FIREBLOCKS_VAULT_ID,\n};\n\n//\n// Craft the transaction\n//\nconsole.log('Crafting transaction...');\nconst txRequest = await k.client.POST('/near/transaction/stake', {\n  body: {\n    account_id: kilnAccountId,\n    wallet: 'c36b1a5da2e60d1fd5d3a6b46f7399eb26571457f3272f3c978bc9527ad2335f',\n    pool_id: KILN_VALIDATORS.NEAR.mainnet.KILN,\n    amount_yocto: parseUnits('1', 24).toString(),\n  },\n});\nif (txRequest.error) {\n  console.log('Failed to craft transaction:', txRequest);\n  process.exit(1);\n} else {\n  console.log('Crafted transaction:', txRequest.data);\n}\nconsole.log('\\n\\n\\n');\n\n//\n// Sign the transaction\n//\nconsole.log('Signing transaction...');\nconst signRequest = await (async () =\u003e {\n  try {\n    // @ts-ignore\n    return await k.fireblocks.signNearTx(vault, txRequest.data.data, \"NEAR_TEST\");\n  } catch (err) {\n    console.log('Failed to sign transaction:', err);\n    process.exit(1);\n  }\n})();\nconsole.log('Signed transaction:', signRequest);\nconsole.log('\\n\\n\\n');\n\n//\n// Broadcast the transaction\n//\nconsole.log('Broadcasting transaction...');\nconst broadcastedRequest = await k.client.POST('/near/transaction/broadcast', {\n  body: {\n    signed_tx_serialized: signRequest.signed_tx.data.signed_tx_serialized,\n  },\n});\nif (broadcastedRequest.error) {\n  console.log('Failed to broadcast transaction:', broadcastedRequest);\n  process.exit(1);\n} else {\n  console.log('Broadcasted transaction:', broadcastedRequest.data);\n}\n\n```\nFind complete examples in the `examples` directory.\n\n## License\n\nThis package is open-sourced software licensed under the [BUSL-1.1 license](https://github.com/kilnfi/sdk-js/blob/main/LICENSE).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkilnfi%2Fsdk-js","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkilnfi%2Fsdk-js","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkilnfi%2Fsdk-js/lists"}