Verbwire Javascript SDK
Verbwire is Plaid for Web3. We abstract away the complexities of the blockchain and building smart contracts to allow you as a developer to build in minutes rather than months. No learning curve. No solidity. No hardhat. And the best part is that it works across all chains. Operate in the language you're familiar with and without the constraints of the current web3 development flow. Let us handle the hard stuff while you focus on buiding...
Our goal at Verbwire is to make your Web3 development experience as easy and seamless as possible. As such, today we're excited to announce the launch of our official Javascript SDK. This goes a long way towards making the development of web3 applications easier than ever. Literally a few lines of code and you're off and running.
All functions from the API are mapped directly to the SDK and allows for easy completion in your IDE. With just a few lines of code you can mint, deploy, send, update, upload to IPFS, and more.
Installation is done in the console via NPM like so:
npm i verbwire
The library needs to be initialized with your verbwire API key. This can be found on the dashboard. Initialize and set your API key on one line at the top of your file:
const verbwire = require('verbwire')('YOUR_API_KEY');
From there you can get started with any of our 50+ endpoints of functionality. For example, you can quickly mint an NFT utilizing our QuickMint function. Just input your chain (7 live chains and 7 testnets are supported currently) along with your wallet address:
await verbwire.mint.quickMintFromFile({
chain: 'ethereum',
filePath: 'myPicture.jpg',
recipientAddress: 'YOUR_WALLET_ADDRESS',
});|
Our custom and QuickMint contracts are Omnichain compatible meaning you can mint to one chain and then seamlessly move that NFT to any of our other supported chains. Similar to the above, this can be done with a few lines of code:
await verbwire.send.quickSend({
sourceChain: 'polygon',
destChain: 'ethereum',
tokenId: '21',
sourceAddress: 'YOUR_WALLET_ADDRESS_ON_POLYGON',
recipientAddress: 'YOUR_WALLET_ADDRESS_ON_ETHEREUM',
});|
If you prefer to operate from your own contract, deploying a smart contract is equally as easy. Utilize our Collection contract or our custom contract to deploy with a few lines of code:
await verbwire.deploy.deployCollectionContract({
chain: 'avalanche',
contractType: 'nft721A',
contractName: 'MyContract',
contractSymbol: 'NFTSYMBOL',
recipientAddress: 'YOUR_WALLET_ADDRESS',
});|
IPFS storage for metadata also couldn't be easier. Just pass along a local file path and the SDK handles the rest:
await verbwire.store.file({
filePath: 'myFile.jpg',
});|
Finally, we have over 25 data endpoints and counting for everything from project ownership information to floor prices across exchanges:
await verbwire.data.ownershipForSlug({
chain: 'ethereum',
slug: 'boredapeyachtclub',
});|
All calls return promises, so chaining with then statements is possible:
verbwire.data.owned({
walletAddress: "0x...."
}).then(function(response) {
console.log(response);
});
It's a magical experience watching such non-trivial tasks boiled down to a few lines of code. This is only just the start. We will continue to make improvements over time and add additional functionality. Our mission is to bring the next 1mm+ developers into the space via the easy tools that Verbwire is creating. We won't stop until we have the most complete set of tools and libraries available. No matter what, we're here to support you and your ideas. Come build with us.
We can't wait to see what you make with our libraries.
You can signup for a Verbwire account here.
Let's build!