{"id":13633134,"url":"https://github.com/tiagosiebler/awesome-crypto-examples","last_synced_at":"2026-02-20T11:04:59.584Z","repository":{"id":41140792,"uuid":"508432167","full_name":"tiagosiebler/awesome-crypto-examples","owner":"tiagosiebler","description":"Examples for working with crypto exchange APIs \u0026 WebSockets in Node.js \u0026 TypeScript. Algo trading snippets \u0026 examples.","archived":false,"fork":false,"pushed_at":"2026-01-15T13:46:32.000Z","size":947,"stargazers_count":88,"open_issues_count":3,"forks_count":23,"subscribers_count":7,"default_branch":"master","last_synced_at":"2026-01-15T16:58:03.680Z","etag":null,"topics":["algotrading","binance","bitcoin","bitget","bitget-api","bybit-api","crypto","cryptocurrency","exchange","nodejs","okx-api","typescript"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"cc0-1.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/tiagosiebler.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":"2022-06-28T19:39:02.000Z","updated_at":"2026-01-15T13:45:19.000Z","dependencies_parsed_at":"2024-01-14T11:01:39.718Z","dependency_job_id":"2207c7e3-ebc8-487f-b4c8-307d861fde55","html_url":"https://github.com/tiagosiebler/awesome-crypto-examples","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/tiagosiebler/awesome-crypto-examples","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tiagosiebler%2Fawesome-crypto-examples","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tiagosiebler%2Fawesome-crypto-examples/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tiagosiebler%2Fawesome-crypto-examples/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tiagosiebler%2Fawesome-crypto-examples/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tiagosiebler","download_url":"https://codeload.github.com/tiagosiebler/awesome-crypto-examples/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tiagosiebler%2Fawesome-crypto-examples/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29648498,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-20T09:27:29.698Z","status":"ssl_error","status_checked_at":"2026-02-20T09:26:12.373Z","response_time":59,"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":["algotrading","binance","bitcoin","bitget","bitget-api","bybit-api","crypto","cryptocurrency","exchange","nodejs","okx-api","typescript"],"created_at":"2024-08-01T23:00:28.473Z","updated_at":"2026-02-20T11:04:59.572Z","avatar_url":"https://github.com/tiagosiebler.png","language":"TypeScript","funding_links":["https://github.com/sponsors/tiagosiebler"],"categories":["Miscellaneous tools","bitcoin","Related Projects"],"sub_categories":["Contributions \u0026 Pull Requests"],"readme":"# Awesome crypto examples\n\n[![Build \u0026 Test](https://github.com/tiagosiebler/awesome-crypto-examples/actions/workflows/build.yml/badge.svg)](https://github.com/tiagosiebler/awesome-crypto-examples/actions/workflows/test.yml)\n[![last commit](https://img.shields.io/github/last-commit/tiagosiebler/awesome-crypto-examples)](https://github.com/tiagosiebler/awesome-crypto-examples)\n[![Telegram](https://img.shields.io/badge/chat-on%20telegram-blue.svg)](https://t.me/nodetraders)\n\nWondering how to \"[insert something crypto \u0026 nodejs related]\"? Welcome to a loose collection of node.js examples and demos in the world of algo trading (especially cryptocurrencies).\n\nWhat kind of examples?\n\n- Working with crypto exchange REST APIs\n- Working with crypto exchange WebSocket streams\n- Anything else crypto + node.js?\n\nNote: these are not meant to suggest best practices. These are purely demonstrations for one (or more) way(s) for doing various things.\n\n## Getting started\n\nAll examples are in node.js and/or typescript.\n\n- Ensure you have node.js installed (see `.nvmrc` for the recommended version (or above))\n- Install dependencies: `npm install`\n\n### Frequenty Asked Questions\n\nCheck out the wiki. Contributions welcome:\nhttps://github.com/tiagosiebler/awesome-crypto-examples/wiki\n\n### Running examples (node.js)\n\nNode.js examples will be any file that ends with `.js`. If the example has a readme, refer to the readme for specific instructions, otherwise use the following command to run the example with node.js:\n\n```bash\nnode src/path/to/example.js\n```\n\n### Running examples (typescript)\n\nTypescript examples will be any file that ends with `.ts`. If the example has a readme, refer to the readme for specific instructions, otherwise use the following command to run the example with typescript's ts-node:\n\n```bash\nnpx ts-node src/path/to/example.ts\n```\n\nRefer to the following documentation for guidance on ts-node: https://www.npmjs.com/package/ts-node#overview\n\n### Providing API keys\n\nSome examples make private API calls (e.g. the [account monitoring](https://github.com/tiagosiebler/awesome-crypto-examples/blob/master/src/exchanges/binance/account-events/log-account-events.ts#L9-L10) ones). These rely on API credentials to make signed API calls to your account.\n\nEither locally download a copy of this repo and edit the values directly, or provide these as environmental variables. If a sample has the following process.env snippet:\n\n```\nconst key = process.env.APIKEY || 'APIKEY';\nconst secret = process.env.APISECRET || 'APISECRET';\n```\n\nYou can provide your API credentials (in unix \u0026 macOS environments) when executing the sample:\n\n```bash\nAPIKEY=\"yourkeyhere\" APISECRET=\"yoursecrethere\" npx ts-node src/exchanges/binance/account-events/log-account-events.ts\n```\n\n## Contributing\n\nPRs for various concepts welcome. Typescript preferred, but plain javascript is also OK.\n\n- Not sure what to add?\n  - What would've helped you when you were first getting started?\n- How big can a demonstration be?\n  - If it's useful \u0026 reasonable for others to learn from, as big as you want!\n- Stuck on a problem and looking for a related sample?\n  - Use the issues tab or join the [node.js algo traders telegram community](https://t.me/nodetraders)!\n\n\u003c!-- template_contributions --\u003e\n\n### Contributions \u0026 Thanks\n\nHave my projects helped you? Share the love, there are many ways you can show your thanks:\n\n- Star \u0026 share my projects.\n- Are my projects useful? Sponsor me on Github and support my effort to maintain \u0026 improve them: https://github.com/sponsors/tiagosiebler\n- Have an interesting project? Get in touch \u0026 invite me to it.\n- Or buy me all the coffee:\n  - ETH(ERC20): `0xA3Bda8BecaB4DCdA539Dc16F9C54a592553Be06C` \u003c!-- metamask --\u003e\n- Sign up with my referral links:\n  - OKX (receive a 20% fee discount!): https://www.okx.com/join/42013004\n  - Binance (receive a 20% fee discount!): https://accounts.binance.com/register?ref=OKFFGIJJ\n  - HyperLiquid (receive a 4% fee discount!): https://app.hyperliquid.xyz/join/SDK\n  - Gate: https://www.gate.io/signup/NODESDKS?ref_type=103\n\n\u003c!---\nold ones:\n  - BTC: `1C6GWZL1XW3jrjpPTS863XtZiXL1aTK7Jk`\n  - BTC(SegWit): `bc1ql64wr9z3khp2gy7dqlmqw7cp6h0lcusz0zjtls`\n  - ETH(ERC20): `0xe0bbbc805e0e83341fadc210d6202f4022e50992`\n  - USDT(TRC20): `TA18VUywcNEM9ahh3TTWF3sFpt9rkLnnQa\n  - gate: https://www.gate.io/signup/AVNNU1WK?ref_type=103\n\n--\u003e\n\u003c!-- template_contributions_end --\u003e\n\n### Contributions \u0026 Pull Requests\n\nContributions are encouraged, I will review any incoming pull requests. See the issues tab for todo items.\n\n\u003c!-- template_related_projects --\u003e\n\n## Related Projects\n\nCheck out our JavaScript/TypeScript/Node.js SDKs \u0026 Projects:\n\n- Visit our website: [https://Siebly.io](https://siebly.io/?ref=gh)\n- Try our REST API \u0026 WebSocket SDKs published on npmjs:\n  - [Bybit Node.js SDK: bybit-api](https://www.npmjs.com/package/bybit-api)\n  - [Kraken Node.js SDK: @siebly/kraken-api](https://www.npmjs.com/package/@siebly/kraken-api)\n  - [OKX Node.js SDK: okx-api](https://www.npmjs.com/package/okx-api)\n  - [Binance Node.js SDK: binance](https://www.npmjs.com/package/binance)\n  - [Gate (gate.com) Node.js SDK: gateio-api](https://www.npmjs.com/package/gateio-api)\n  - [Bitget Node.js SDK: bitget-api](https://www.npmjs.com/package/bitget-api)\n  - [Kucoin Node.js SDK: kucoin-api](https://www.npmjs.com/package/kucoin-api)\n  - [Coinbase Node.js SDK: coinbase-api](https://www.npmjs.com/package/coinbase-api)\n  - [Bitmart Node.js SDK: bitmart-api](https://www.npmjs.com/package/bitmart-api)\n- Try my misc utilities:\n  - [OrderBooks Node.js: orderbooks](https://www.npmjs.com/package/orderbooks)\n  - [Crypto Exchange Account State Cache: accountstate](https://www.npmjs.com/package/accountstate)\n- Check out my examples:\n  - [awesome-crypto-examples Node.js](https://github.com/tiagosiebler/awesome-crypto-examples)\n  \u003c!-- template_related_projects_end --\u003e\n\n\u003c!-- template_star_history --\u003e\n\n## Star History\n\n[![Star History Chart](https://api.star-history.com/svg?repos=tiagosiebler/bybit-api,tiagosiebler/okx-api,tiagosiebler/binance,tiagosiebler/bitget-api,tiagosiebler/bitmart-api,tiagosiebler/gateio-api,tiagosiebler/kucoin-api,tiagosiebler/coinbase-api,tiagosiebler/orderbooks,tiagosiebler/accountstate,tiagosiebler/awesome-crypto-examples\u0026type=Date)](https://star-history.com/#tiagosiebler/bybit-api\u0026tiagosiebler/okx-api\u0026tiagosiebler/binance\u0026tiagosiebler/bitget-api\u0026tiagosiebler/bitmart-api\u0026tiagosiebler/gateio-api\u0026tiagosiebler/kucoin-api\u0026tiagosiebler/coinbase-api\u0026tiagosiebler/orderbooks\u0026tiagosiebler/accountstate\u0026tiagosiebler/awesome-crypto-examples\u0026Date)\n\n\u003c!-- template_star_history_end --\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftiagosiebler%2Fawesome-crypto-examples","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftiagosiebler%2Fawesome-crypto-examples","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftiagosiebler%2Fawesome-crypto-examples/lists"}