Awesome crypto examples
January 15, 2026 ยท View on GitHub
Wondering how to "[insert something crypto & nodejs related]"? Welcome to a loose collection of node.js examples and demos in the world of algo trading (especially cryptocurrencies).
What kind of examples?
- Working with crypto exchange REST APIs
- Working with crypto exchange WebSocket streams
- Anything else crypto + node.js?
Note: these are not meant to suggest best practices. These are purely demonstrations for one (or more) way(s) for doing various things.
Getting started
All examples are in node.js and/or typescript.
- Ensure you have node.js installed (see
.nvmrcfor the recommended version (or above)) - Install dependencies:
npm install
Frequenty Asked Questions
Check out the wiki. Contributions welcome: https://github.com/tiagosiebler/awesome-crypto-examples/wiki
Running examples (node.js)
Node.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:
node src/path/to/example.js
Running examples (typescript)
Typescript 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:
npx ts-node src/path/to/example.ts
Refer to the following documentation for guidance on ts-node: https://www.npmjs.com/package/ts-node#overview
Providing API keys
Some examples make private API calls (e.g. the account monitoring ones). These rely on API credentials to make signed API calls to your account.
Either 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:
const key = process.env.APIKEY || 'APIKEY';
const secret = process.env.APISECRET || 'APISECRET';
You can provide your API credentials (in unix & macOS environments) when executing the sample:
APIKEY="yourkeyhere" APISECRET="yoursecrethere" npx ts-node src/exchanges/binance/account-events/log-account-events.ts
Contributing
PRs for various concepts welcome. Typescript preferred, but plain javascript is also OK.
- Not sure what to add?
- What would've helped you when you were first getting started?
- How big can a demonstration be?
- If it's useful & reasonable for others to learn from, as big as you want!
- Stuck on a problem and looking for a related sample?
- Use the issues tab or join the node.js algo traders telegram community!
Contributions & Thanks
Have my projects helped you? Share the love, there are many ways you can show your thanks:
- Star & share my projects.
- Are my projects useful? Sponsor me on Github and support my effort to maintain & improve them: https://github.com/sponsors/tiagosiebler
- Have an interesting project? Get in touch & invite me to it.
- Or buy me all the coffee:
- ETH(ERC20):
0xA3Bda8BecaB4DCdA539Dc16F9C54a592553Be06C
- ETH(ERC20):
- Sign up with my referral links:
- OKX (receive a 20% fee discount!): https://www.okx.com/join/42013004
- Binance (receive a 20% fee discount!): https://accounts.binance.com/register?ref=OKFFGIJJ
- HyperLiquid (receive a 4% fee discount!): https://app.hyperliquid.xyz/join/SDK
- Gate: https://www.gate.io/signup/NODESDKS?ref_type=103
Contributions & Pull Requests
Contributions are encouraged, I will review any incoming pull requests. See the issues tab for todo items.
Related Projects
Check out our JavaScript/TypeScript/Node.js SDKs & Projects:
- Visit our website: https://Siebly.io
- Try our REST API & WebSocket SDKs published on npmjs:
- Try my misc utilities:
- Check out my examples: