Welcome to the documents for Story Protocol SDK. The SDK provides the APIs for developers to build applications with Story Protocol. By using the SDK, developers can create the resources like IP assets and perform actions to interact with the resource.
Suppose you already have a node project or created a new node project. First, you need to install @story-protocol/core-sdk
in your project. You can use one of the following command to install the package:
Use npm
:
npm install --save @story-protocol/core-sdk [email protected]
Use pnpm
:
pnpm install @story-protocol/core-sdk [email protected]
Use yarn
:
yarn add @story-protocol/core-sdk [email protected]
Besides the Story Protocol SDK package @story-protocol/core-sdk
, we also require the package viem
(https://www.npmjs.com/package/viem) to access the DeFi wallet accounts.
Next we can initiate the SDK Client by first setting up our wallet and then the client itself.
The SDK supports using viem
for initiating SDK client. Create a typescript file and write the following code to initiate the client with a private key:
:information-source: Make sure to have WALLET_PRIVATE_KEY set up in your .env file.
import { privateKeyToAccount } from "viem/accounts";
const WALLET_PRIVATE_KEY = process.env.WALLET_PRIVATE_KEY || "0x";
const account = privateKeyToAccount(WALLET_PRIVATE_KEY as Address);
The preceding code created the account
object for creating the SDK client.
To set up the SDK client, import StoryClient
and StoryConfig
from @story-protocol/core-sdk
. Write the following code, utilizing the account
we created previously.
:information-source: Make sure to have RPC_PROVIDER_URL for your desired chain set up in your .env file. We recommend using the Sepolia network with
RPC_PROVIDER_URL=https://rpc.ankr.com/eth_sepolia
.
import { StoryClient, StoryConfig } from "@story-protocol/core-sdk";
const config: StoryConfig = {
transport: http(process.env.RPC_PROVIDER_URL),
account: account,
};
const client = StoryClient.newClient(config);
This section provides the instructions on how to build Story Protocol SDK from source code.
- Install PNPM: Execute
npm install -g pnpm
- Install TypeScript: Run
pnpm add typescript -D
- Install Yalc: Use
npm install -g yalc
For manual testing of the core-sdk, set up a separate web project. The guide below uses yalc
to link the core-sdk
locally, enabling its installation and import for testing.
Under the typescript-sdk/packages/core-sdk
directory:
- Navigate to the
core-sdk
directory. - Execute
npm run build
to build your latest code. - Run
yalc publish
. You should see a message like@story-protocol/core-sdk@<version> published in store.
(Note: The version number may vary).
To set up your testing environment (e.g., a new Next.js project), use yalc add @story-protocol/core-sdk@<version>
(ensure the version number is updated accordingly).
- Run
pnpm install
. This installs@story-protocol/core-sdk@<version>
with your local changes.
Under the typescript-sdk/packages/core-sdk
directory:
- Execute
npm run build
to build your latest code. - Run
yalc push
.
In your testing environment:
- Run
yalc update
to pull the latest changes.
Steps to pull and compile latest smart contract ABIs (Currently pulls from the protocol-contracts dev
branch)
- run
cd packages/wagmi-generator && npm run generate
Package | Description |
---|---|
core-sdk | The core sdk for interacting with the protocol |
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change. Details see: CONTRIBUTING
Please make sure to update tests as appropriate.