svelte-contracts is a library to easily create and manage web3 contracts as svelte readable stores.
npm install svelte-contracts
import { createContract } from 'svelte-contracts';
const ERC20Token = createContract('0x95ad61b0a150d79219dcf64e1e6cc01f0b64c4ce'); // from etherscan.io
const symbol = await ERC20Token.methods.symbol().call();
console.log(symbol);
Output: 'SHIB'
Note: you must be connected to the blockchain to use any prebuilt contracts. Try svelte-web3
.
import { supported } from 'svelte-contracts';
console.log(supported);
Output: ['USDT', 'USDC', 'BUSD', 'UNI', 'UST', 'DAI']
import { USDC, USDT } from 'svelte-contracts';
await USDC.methods.transfer('0x7b76229515d374a537360BDFE1504aF5EE04c415').call();
await USDC.methods.approve('0x7b76229515d374a537360BDFE1504aF5EE04c415').call();
createContract(address, ABI=ERC20ABI)
address
- blockchain address for the contract (found on 3rd party sites like Etherscan.io)ABI
- (optional) defaults to ERC20ABI which can be found here. Provide your own ABI as JSON if you want more functionality.