Skip to content

storyprotocol/typescript-tutorial

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

66 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Story Protocol TypeScript SDK Examples

Get Started

  1. Install the dependencies:

    npm install
    
  2. Rename the .env.example file to .env

  3. Read the docs below associated with the example you want to run

📄 Run "Simple Mint and Register" Example

  1. Add your Story Network Testnet wallet's private key to .env file:

    WALLET_PRIVATE_KEY=<YOUR_WALLET_PRIVATE_KEY>
    
  2. Go to Pinata and create a new API key. Add the JWT to your .env file:

    PINATA_JWT=<YOUR_PINATA_JWT>
    
  3. npm run mint-and-register

📄 Run "Simple Mint and Register SPG" Example

  1. Add your Story Network Testnet wallet's private key to .env file:

    WALLET_PRIVATE_KEY=<YOUR_WALLET_PRIVATE_KEY>
    
  2. Go to Pinata and create a new API key. Add the JWT to your .env file:

    PINATA_JWT=<YOUR_PINATA_JWT>
    
  3. Create a new SPG NFT collection by running npm run create-spg-collection in your terminal.

    3a. Look at the console output, and copy the NFT contract address. Add that value as SPG_NFT_CONTRACT_ADDRESS to your .env file:

    SPG_NFT_CONTRACT_ADDRESS=<SPG_NFT_CONTRACT_ADDRESS>
    

    NOTE: You will only have to do this one time. Once you create an SPG collection, you can run this script as many times as you'd like.

  4. npm run mint-and-register-spg

🖼️ Run "Register Derivative Non-Commercial" Example

  1. Add your Story Network Testnet wallet's private key to .env file:

    WALLET_PRIVATE_KEY=<YOUR_WALLET_PRIVATE_KEY>
    
  2. npm run register-deriv-non-com

💰 Run "Register Derivative Commercial" Example

  1. Add your Story Network Testnet wallet's private key to .env file:

    WALLET_PRIVATE_KEY=<YOUR_WALLET_PRIVATE_KEY>
    
  2. You will be paying for the License Token using a test ERC-20 token.

    2a. Mint some tokens by running this transaction (10 is good).

    2b. Next, you have to allow the royalty contract to spend those tokens on your behalf so it can properly distribute royalties to ancestor IPs. Run the approve transaction where the spender is the v1.2 (current deployment supported by the SDK) address of RoyaltyModule here. And the value is >= 2 (that's the amount we're paying in the script).

  3. npm run register-deriv-com

About

Tutorial for TypeScript SDK Documentation

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published