@openformat/sdk
TypeScript icon, indicating that this package has built-in type declarations

1.4.0 • Public • Published

Open Format SDK

The Open Format Typescript SDK offers a convenient method for engaging with our smart contracts, serving as the lego blocks for constructing web3 applications with ease. If using React, why not check out our React Hooks library.

Examples

Fungible tokens

Fungible token creation and minting

const sdk = new OpenFormatSDK({
  network: Chains.arbitrumSepolia,
  appId: 'INSERT_APP_ID',
  signer: 'INSERT_PRIVATE_KEY',
});

const token = await sdk.App.createToken({
  name: 'My First Token',
  symbol: 'MFT',
  supply: toWei('1000'),
});

await token.mint({
  to: 'WALLET_ADDRESS',
  amount: toWei('1000'),
});

NFTs

NFT creation and minting

const sdk = new OpenFormatSDK({
  network: Chains.arbitrumSepolia,
  appId: 'INSERT_APP_ID',
  signer: 'INSERT_PRIVATE_KEY',
});

const NFT = await sdk.App.createNFT({
  name: 'My First NFT',
  symbol: 'NFT',
  royaltyRecipient: '0x123...',
  royaltyBps: 250, // 2.5%
});

await NFT.mint({
  to: 'WALLET_ADDRESS',
  tokenURI:
    'ipfs://bafkreib2ofqfcgpe5laipvgalzvf24aqbz7tmbktz36zkvt54wnkldzm2i',
});

Node.js

From examples/node-deploy you can run the various scripts to deploy, mint and try out the subgraph which utilises @openformat/sdk.

Quickstart

Install dependencies:

npm install @openformat/sdk ethers^5
# or
yarn install @openformat/sdk ethers^5
# or
pnpm install @openformat/sdk ethers^5

Please note: ethers v6.0.0 not yet supported.

Initialise SDK:

import { OpenFormatSDK, Chains } from '@openformat/sdk';

const sdk = new OpenFormatSDK({
  // Choose which blockchain you would like to use
  network: Chains.arbitrumSepolia,
  // Go to https://apps.openformat.tech/ to generate App
  appId: 'INSERT_APP_ID',
  // Private key for sign transactions
  signer: 'INSERT_PRIVATE_KEY',
});

Now you have access to all SDK functionality.

// Create NFT contract
await sdk.App.createNFT(params);
// Create Fungible token contract
await sdk.App.createToken(params);
// Get existing contract
await sdk.getContract(params);

Documentation

Quickstart - Swiftly set up your development environment.

App - Learn how to create tokens, manage creator access, and handle application fees for your projects.

NFTs - Effortlessly manage your created Non-Fungible Tokens (NFTs).

Fungible tokens - Seamlessly manage your created Fungible Tokens.

Contributing

Our bounty program provides developers with a chance to earn by contributing to the Open Format ecosystem through completing bounties for new features and templates on our product roadmap. If you're interested in getting involved, check out our current bounties to see if there are any projects that match your skills and interests.

Community

We're building a community of talented developers who are passionate about shaping the future of the internet. We believe that collaboration and shared knowledge are absolutely essential to creating amazing things that will impact people's lives in profound ways. If you share our vision, we invite you to come be a part of something amazing on Discord.

Readme

Keywords

none

Package Sidebar

Install

npm i @openformat/sdk

Weekly Downloads

6

Version

1.4.0

License

Apache-2.0

Unpacked Size

2.25 MB

Total Files

203

Last publish

Collaborators

  • openformat