Overview
The QuickNode SDK is a powerful software development kit designed to facilitate interaction with the QuickNode infrastructure. This SDK offers a comprehensive JavaScript and TypeScript framework-agnostic library that seamlessly supports CommonJS and ES module systems.
The QuickNode SDK is open-source and its source code can be found at qn-oss repository.
Installation
The QuickNode SDK can be installed through the @quicknode/sdk npm package. Note that this package requires Node.js v16 or higher.
Enter the following commands in your Terminal to begin the installation:
npm install @quicknode/sdk
or
yarn add @quicknode/sdk
Quickstart
The Core
class requires an endpointUrl
that corresponds with an endpoint URL from your QuickNode account. If you don't have a QuickNode account yet, you can sign up for one here and create an endpoint for free today!
The correct chain will be automatically determined from your endpoint URL, meaning the functions you use will communicate correctly with your endpoint's chain. If you would like to override this chain and manually specify another one, visit our Viem Integration page to learn how.
import { Core } from '@quicknode/sdk'
// if you are using CommonJS, use this line instead:
// const { Core } = require('@quicknode/sdk')
const core = new Core({
endpointUrl: "https://my-endpoint-name.quiknode.pro/myauthtoken/",
})
// getBlock() is communicating with ethereum sepolia network
core.client.getBlock().then((res) => console.log(res));
Modules
The QuickNode SDK has a modular architecture, mirroring the structure of QuickNode's services. Each module has a unique function:
- Core: Enables endpoint RPC functionality, allowing communication with your endpoint through both core and add-on RPC calls. See the overview page for more info.
Tree Shaking
The modules can be imported directly allowing for tree shaking with modern JavaScript bundlers:
- Core:
import Core from "@quicknode/sdk/core"
We ❤️ Feedback
❓ We want to hear from you! Please take a few minutes to fill out our QuickNode SDK feedback form and let us know what you currently think about the SDK. This helps us further improve the SDK.