### B3 SDK Quickstart
Source: https://docs.b3.fun/anyspend/api-reference/introduction
A guide to get started with the B3 SDK in under 5 minutes. This section likely contains setup instructions and basic usage examples for developers.
```en
## [Quick Start Guide Get up and running with B3 SDK in under 5 minutes ](https://docs.b3.fun/quickstart)
```
--------------------------------
### B3 SDK Quickstart
Source: https://docs.b3.fun/network-status
A guide to get started with the B3 SDK in under 5 minutes. This section likely contains setup instructions and basic usage examples for developers.
```en
## [Quick Start Guide Get up and running with B3 SDK in under 5 minutes ](https://docs.b3.fun/quickstart)
```
--------------------------------
### B3 SDK Quickstart
Source: https://docs.b3.fun/index
A guide to get started with the B3 SDK in under 5 minutes. This section likely contains setup instructions and basic usage examples for developers.
```en
## [Quick Start Guide Get up and running with B3 SDK in under 5 minutes ](https://docs.b3.fun/quickstart)
```
--------------------------------
### B3 SDK Quickstart
Source: https://docs.b3.fun/bondkit/guides/migration
A guide to get started with the B3 SDK in under 5 minutes. This section likely contains setup instructions and basic usage examples for developers.
```en
## [Quick Start Guide Get up and running with B3 SDK in under 5 minutes ](https://docs.b3.fun/quickstart)
```
--------------------------------
### B3 Quick Start Guide
Source: https://docs.b3.fun/constitution
A guide to help users get started with the B3 SDK quickly, aiming for setup in under 5 minutes. It provides a streamlined path to begin development on the B3 platform.
```APIDOC
Quick Start Guide:
Purpose: Get up and running with B3 SDK in under 5 minutes.
Link: https://docs.b3.fun/quickstart
```
--------------------------------
### B3 Quick Start Guide
Source: https://docs.b3.fun/llms-full
A guide to help developers get started with the B3 SDK quickly, aiming for setup in under 5 minutes.
```html
```
--------------------------------
### B3 SDK Quickstart
Source: https://docs.b3.fun/llms
A guide to getting started with the B3 SDK quickly to begin building on the B3 ecosystem.
```en
Get started with the B3 SDK in minutes and start building on the B3 ecosystem
```
--------------------------------
### B3 Quick Start Guide
Source: https://docs.b3.fun/bondkit/api
A guide to help users get started with the B3 SDK quickly, aiming for setup in under 5 minutes. It provides a streamlined path to begin development on the B3 platform.
```APIDOC
Quick Start Guide:
Purpose: Get up and running with B3 SDK in under 5 minutes.
Link: https://docs.b3.fun/quickstart
```
--------------------------------
### B3 CreateKit Quickstart Example
Source: https://docs.b3.fun/createkit/quickstart
This TypeScript script demonstrates the end-to-end process of creating an NFT collection using B3 CreateKit. It covers initializing viem clients, setting up CreateKit services, generating signatures, storing collection metadata, deploying the collection, minting an NFT, and tracking rewards. It relies on environment variables for private keys and specific B3 testnet configurations.
```typescript
import {
CollectionManager,
RewardTracker,
BaseMintStorage,
b3Testnet
} from '@b3dotfun/basemint'
import { createPublicClient, createWalletClient, http } from 'viem'
import { privateKeyToAccount } from 'viem/accounts'
async function quickstart() {
// Initialize clients
const publicClient = createPublicClient({
chain: b3Testnet,
transport: http()
})
const account = privateKeyToAccount(process.env.PRIVATE_KEY as `0x${string}`)
const walletClient = createWalletClient({
chain: b3Testnet,
transport: http(),
account
})
// Initialize CreateKit services
const collectionManager = new CollectionManager(publicClient)
const rewardTracker = new RewardTracker(publicClient)
const storage = new BaseMintStorage({
baseUrl: 'https://api.basemint.fun'
})
// Step 1: Create collection metadata
const collectionMetadata = {
name: "My First Collection",
symbol: "MFC",
creator: account.address,
gameOwner: account.address,
maxSupply: 1000n,
mintPrice: 0n,
maxPerWallet: 10n,
description: "My first NFT collection on B3",
image: "https://example.com/collection-image.png",
startTime: 0n,
endTime: BigInt(Math.floor(Date.now() / 1000) + 86400 * 30),
tokenStandard: "ERC721" as const,
chainId: 1993
}
// Step 2: Generate signatures
const creatorSignature = await collectionManager.generateCreatorSignature(
walletClient,
collectionMetadata
)
const predictedAddress = collectionManager.predictCollectionAddress(
collectionMetadata,
creatorSignature
)
console.log(`π Predicted collection address: ${predictedAddress}`)
// Step 3: Submit to storage
try {
await storage.submitCollection(collectionMetadata, creatorSignature)
console.log("β Collection metadata stored successfully")
} catch (error) {
console.error("β Failed to store collection:", error)
return
}
// Step 4: Deploy and mint
const deployerSignature = await collectionManager.generateDeployerSignature(
walletClient,
predictedAddress
)
const collection = collectionManager.createCollection(
predictedAddress,
collectionMetadata.tokenStandard
)
const mintTx = await collection.mint(
walletClient,
1n,
undefined,
0n,
[],
creatorSignature,
deployerSignature
)
console.log(`π Collection deployed and first NFT minted!`)
console.log(`π Transaction hash: ${mintTx}`)
// Step 5: Verify deployment
const isDeployed = await collection.isDeployed()
console.log(`π Collection deployed: ${isDeployed}`)
// Step 6: Track rewards
const escrowAddress = collectionManager.getEscrowAddress()
const collectionRewards = await rewardTracker.getCollectionRewards(
escrowAddress,
predictedAddress
)
console.log("π Collection Rewards:", {
totalRewards: collectionRewards.totalRewards.toString(),
unclaimedRewards: collectionRewards.unclaimedRewards.toString(),
totalMints: collectionRewards.totalMints.toString()
})
}
// Run the quickstart
quickstart().catch(console.error)
```
--------------------------------
### Project Setup with BondKit
Source: https://docs.b3.fun/bondkit/installation
Sets up a new project for BondKit development. This includes creating a project directory, initializing it with pnpm, installing necessary dependencies like the SDK and TypeScript, and generating a tsconfig.json file.
```bash
# Create a new project
mkdir my-bondkit-app
cd my-bondkit-app
pnpm init
# Install dependencies
pnpm add @b3dotfun/sdk typescript
pnpm add -D @types/node tsx
# Create TypeScript config
npx tsc --init
```
--------------------------------
### Running the B3 CreateKit Quickstart Script
Source: https://docs.b3.fun/createkit/quickstart
This command executes the TypeScript quickstart script using `tsx`, a tool that allows running TypeScript files directly without prior compilation. Ensure you have `tsx` installed (`npm install -g tsx` or `yarn global add tsx`) and your environment variables (like `PRIVATE_KEY`) are set.
```bash
npx tsx quickstart.ts
```
--------------------------------
### BondKit Workflow and Setup
Source: https://docs.b3.fun/llms
Information on how BondKit works, installation, and quickstart guides for launching ERC20 bond tokens.
```APIDOC
How BondKit Works:
Description: Create β Bond β Migrate: the endβtoβend flow for launching ERC20 bond tokens on Base.
Installation:
Description: Install and configure BondKit for launching ERC20 bond tokens on Base.
Quickstart:
Description: Launch an ERC20 bond token in minutes: Create β Bond β Migrate.
```
--------------------------------
### React/Vite Setup with CreateKit
Source: https://docs.b3.fun/createkit/installation
Sets up viem clients and the CollectionManager for React/Vite applications using B3 Testnet and environment variables for the RPC URL.
```typescript
import { createPublicClient, http } from 'viem'
import { b3Testnet } from '@b3dotfun/basemint'
import { CollectionManager } from '@b3dotfun/basemint'
export const publicClient = createPublicClient({
chain: b3Testnet,
transport: http(import.meta.env.VITE_RPC_URL)
})
export const collectionManager = new CollectionManager(publicClient)
```
--------------------------------
### Running BondKit Setup Test
Source: https://docs.b3.fun/bondkit/installation
Command to execute the BondKit setup test file using `tsx`.
```bash
npx tsx test-bondkit.ts
```
--------------------------------
### Advanced BondKit Setup with Custom Wallet Client
Source: https://docs.b3.fun/bondkit/installation
Illustrates an advanced setup for BondKit, including custom wallet client configuration using viem and connecting the BondkitTokenFactory with a custom transport. It also shows how to initialize and work with an existing BondKit token.
```typescript
import {
BondkitTokenFactory,
BondkitToken,
getConfig
} from "@b3dotfun/sdk/bondkit";
import { createWalletClient, custom } from "viem";
import { base } from "viem/chains";
// Custom wallet client setup
const walletClient = createWalletClient({
chain: base,
transport: custom(window.ethereum)
});
// Initialize with custom configuration
const config = getConfig(base.id);
const factory = new BondkitTokenFactory(base.id);
// Connect with custom wallet client
await factory.connect(walletClient.transport);
// Work with existing token
const token = new BondkitToken(
"0x123...", // token address
process.env.WALLET_PRIVATE_KEY
);
```
--------------------------------
### Next.js Setup with CreateKit
Source: https://docs.b3.fun/createkit/installation
Initializes viem clients and CreateKit managers (CollectionManager, RewardTracker, BaseMintStorage) for a Next.js application using B3 Testnet.
```typescript
import { createPublicClient, http } from 'viem'
import { b3Testnet } from '@b3dotfun/basemint'
import {
CollectionManager,
RewardTracker,
BaseMintStorage
} from '@b3dotfun/basemint'
// Initialize clients
export const publicClient = createPublicClient({
chain: b3Testnet,
transport: http()
})
// Initialize CreateKit managers
export const collectionManager = new CollectionManager(publicClient)
export const rewardTracker = new RewardTracker(publicClient)
export const storage = new BaseMintStorage({
baseUrl: 'https://api.basemint.fun'
})
```
--------------------------------
### Initialize Viem Clients with CreateKit
Source: https://docs.b3.fun/createkit/installation
Provides examples for initializing both public and wallet viem clients using CreateKit's chain definitions. The public client is for reading data, while the wallet client is for signing transactions, typically used server-side.
```typescript
import { createPublicClient, createWalletClient, http } from 'viem'
import { privateKeyToAccount } from 'viem/accounts'
import { b3Testnet } from '@b3dotfun/basemint'
// Public client for reading data
export const publicClient = createPublicClient({
chain: b3Testnet,
transport: http()
})
// Wallet client for transactions (for server-side usage)
export const walletClient = createWalletClient({
chain: b3Testnet,
transport: http(),
account: privateKeyToAccount(process.env.PRIVATE_KEY as `0x${string}`)
})
```
--------------------------------
### CreateKit SDK: Core Functionality Guides
Source: https://docs.b3.fun/llms
Guides covering the core functionalities of the CreateKit SDK. This includes installation, a quick start for creating your first NFT collection, detailed minting processes, and managing the rewards system.
```APIDOC
Installation:
Install CreateKit (BaseMint SDK) in your project.
Quick Start:
Create your first NFT collection with CreateKit in minutes.
Minting:
Guides on token minting, including deployment, regular minting, and advanced features.
Rewards System:
Understanding and implementing the CreateKit reward distribution system.
```
--------------------------------
### Verify AnySpend Setup
Source: https://docs.b3.fun/anyspend/installation
A simple React component to verify that the AnySpend setup is working correctly by rendering the AnySpend component.
```javascript
import { AnySpend } from "@b3dotfun/sdk/anyspend/react";
function TestComponent() {
return ;
}
```
--------------------------------
### BondKit Quickstart: Deploy, Trade, Migrate
Source: https://docs.b3.fun/bondkit/quickstart
This guide walks through the lifecycle of a BondKit token: deploying a new bond token, trading during the bonding phase, monitoring progress, and migrating to Uniswap v4. It assumes prior installation and a funded wallet on Base.
```APIDOC
BondKit Lifecycle:
1. Deploy Bond Token
2. Trade during Bonding Phase
3. Monitor Progress
4. Migrate to Uniswap v4
Prerequisites:
- Installation completed
- Funded wallet on Base
Flow Diagram:
User <-> UniswapV4TradersTokenFactory
[Bonding Phase]
- deployBondkitToken()
- buy()/sell()
[Migration Phase]
- migrateToDex()
Key Actions:
- Deploy Token
- Buy Tokens
- Sell Tokens
- Check Migration Readiness
- Execute Migration
```
--------------------------------
### Getting Started with B3
Source: https://docs.b3.fun/llms
Essential guides for new users, covering account creation, wallet security, profile customization, and managing embedded wallets. This section ensures users can securely access and personalize their B3 experience.
```APIDOC
Crypto and Wallet Security:
Description: Understanding crypto wallets, their components, security best practices, and B3's use of wallets for identity and ownership.
Key Concepts:
- Private Keys: Secure storage and management.
- Recovery Phrases: Importance and backup.
- B3 Wallet Integration: For identity and ownership verification.
How to Create a B3 Account:
Description: Steps to create a B3 account using email, wallet, or social login.
Login Methods:
- Email Login
- Wallet Login (e.g., MetaMask, Coinbase Wallet)
- Social Login (e.g., Google, Twitter)
How to Customize Your Basement Profile:
Description: Personalizing the Basement profile with avatars, usernames, themes, and signatures.
Customization Options:
- Avatar: Upload or select.
- Username: Set a unique identifier.
- Theme: Apply visual styles.
- Signature: Add a personal touch.
How to Export Your Embedded Wallet:
Description: Instructions for exporting the BSMNT embedded wallet to use with external applications.
Export Options:
- Copy Private Key
- Copy Recovery Phrase
Compatibility:
- Usable with wallets like Rainbow or MetaMask.
How to Link Additional Social Accounts:
Description: Connecting external accounts like Discord, Twitter, and Gmail to enhance B3 profile identity.
Supported Accounts:
- Discord
- Twitter
- Gmail
- Other social platforms
```
--------------------------------
### B3 AnySpend Provider Setup
Source: https://docs.b3.fun/anyspend/installation
Wraps your React application with B3Provider and AnyspendProvider to enable AnySpend features. Includes necessary CSS import.
```javascript
import { AnyspendProvider } from "@b3dotfun/sdk/anyspend/react";
import { B3Provider } from "@b3dotfun/sdk/global-account/react";
import "@b3dotfun/sdk/index.css";
function App() {
return (
{/* Your app components */}
);
}
export default App;
```
--------------------------------
### TypeScript Configuration for B3 SDK
Source: https://docs.b3.fun/anyspend/installation
Recommended TypeScript configuration for optimal compatibility when using the B3 SDK, ensuring proper module resolution and import handling.
```json
{
"compilerOptions": {
"moduleResolution": "node",
"allowSyntheticDefaultImports": true,
"esModuleInterop": true
}
}
```
--------------------------------
### Install BondKit SDK
Source: https://docs.b3.fun/bondkit/installation
Installs the BondKit SDK using pnpm, npm, or yarn. This is the first step to integrate BondKit into your project.
```pnpm
pnpm add @b3dotfun/sdk
```
```npm
npm install @b3dotfun/sdk
```
```yarn
yarn add @b3dotfun/sdk
```
--------------------------------
### Installing BondKit SDK
Source: https://docs.b3.fun/bondkit/installation
Command to add the BondKit SDK to your project using pnpm.
```bash
pnpm add @b3dotfun/sdk
```
--------------------------------
### Install CreateKit Dependencies
Source: https://docs.b3.fun/createkit/installation
Installs the required peer dependencies for CreateKit, which are viem and wagmi Core. These are essential for interacting with the blockchain.
```npm
npm install viem @wagmi/core
```
```yarn
yarn add viem @wagmi/core
```
```pnpm
pnpm add viem @wagmi/core
```
--------------------------------
### B3 CreateKit API Reference
Source: https://docs.b3.fun/createkit/installation
Overview of the B3 CreateKit API, including sections for Collections and Referrers. This serves as a high-level entry point to the API documentation.
```APIDOC
API Reference:
- Collections
- Referrers
```
--------------------------------
### Initialize CreateKit Services
Source: https://docs.b3.fun/createkit/quickstart
Sets up essential clients and services for interacting with the B3 network, including collection management, reward tracking, and storage. It requires viem for blockchain interactions and specific B3 SDK modules.
```typescript
import {
CollectionManager,
RewardTracker,
BaseMintStorage,
b3Testnet
} from '@b3dotfun/basemint'
import { createPublicClient, createWalletClient, http } from 'viem'
import { privateKeyToAccount } from 'viem/accounts'
// Initialize clients
const publicClient = createPublicClient({
chain: b3Testnet,
transport: http()
})
const account = privateKeyToAccount(process.env.PRIVATE_KEY as `0x${string}`)
const walletClient = createWalletClient({
chain: b3Testnet,
transport: http(),
account
})
// Initialize CreateKit services
const collectionManager = new CollectionManager(publicClient)
const rewardTracker = new RewardTracker(publicClient)
const storage = new BaseMintStorage({
baseUrl: 'https://api.basemint.fun'
})
```
--------------------------------
### Verify CreateKit Installation
Source: https://docs.b3.fun/createkit/installation
A script to test the CreateKit installation by connecting to B3 Testnet, retrieving the block number, and getting the factory address.
```typescript
import { b3Testnet, CollectionManager } from '@b3dotfun/basemint'
import { createPublicClient, http } from 'viem'
async function testInstallation() {
try {
// Create client
const client = createPublicClient({
chain: b3Testnet,
transport: http()
})
// Initialize manager
const manager = new CollectionManager(client)
// Test connection
const blockNumber = await client.getBlockNumber()
console.log('β Successfully connected to B3 Testnet')
console.log(`π Current block number: ${blockNumber}`)
// Test contract interaction
const factoryAddress = manager.getFactoryAddress()
console.log(`π Factory address: ${factoryAddress}`)
console.log('π CreateKit installation successful!')
} catch (error) {
console.error('β Installation test failed:', error)
}
}
testInstallation()
```
--------------------------------
### New Project Setup
Source: https://docs.b3.fun/llms-full
Steps to set up a new project, including creating a directory, initializing npm, installing the SDK and TypeScript dependencies, and creating a TypeScript configuration file.
```bash
# Create a new project
mkdir my-bondkit-app
cd my-bondkit-app
pnpm init
# Install dependencies
pnpm add @b3dotfun/sdk typescript
pnpm add -D @types/node tsx
# Create TypeScript config
npx tsc --init
```
--------------------------------
### Install B3 SDK using npm
Source: https://docs.b3.fun/anyspend/installation
Installs the B3 SDK package using npm, which is necessary for integrating AnySpend functionality into your React application.
```bash
npm install @b3dotfun/sdk
```
--------------------------------
### Simple User Onboarding Flow
Source: https://docs.b3.fun/anyspend/examples
Demonstrates a step-by-step user onboarding process using React. It includes wallet connection, crypto purchase via AnySpend, and progress tracking. Dependencies include React's useState hook and a hypothetical useWallet hook.
```javascript
function UserOnboarding() {
const [step, setStep] = useState(1);
const [userAddress] = useWallet();
return (
= 1 ? 'active' : ''}`}>1. Connect Wallet
= 2 ? 'active' : ''}`}>2. Buy Crypto
= 3 ? 'active' : ''}`}>3. Start Using
{step === 1 && (
Welcome! Let's get you started
First, connect your wallet to continue.
setStep(2)} />
)}
{step === 2 && (
Buy your first crypto
Purchase tokens with your credit card to get started.
{
setStep(3);
toast.success("Purchase successful! Welcome to the ecosystem!");
}}
/>
)}
{step === 3 && (
You're all set! π
Your crypto purchase is complete. Here's what you can do next:
)}
);
}
```
--------------------------------
### Basic Setup for CreateKit
Source: https://docs.b3.fun/llms-full
Illustrates the initial setup required to use B3.fun CreateKit. This includes initializing Viem clients for public and wallet interactions, setting up accounts, and instantiating core CreateKit services like CollectionManager, RewardTracker, and BaseMintStorage.
```typescript
import {
CollectionManager,
RewardTracker,
BaseMintStorage,
b3Testnet
} from '@b3dotfun/basemint'
import { createPublicClient, createWalletClient, http } from 'viem'
import { privateKeyToAccount } from 'viem/accounts'
// Initialize clients
const publicClient = createPublicClient({
chain: b3Testnet,
transport: http()
})
const account = privateKeyToAccount(process.env.PRIVATE_KEY as `0x${string}`)
const walletClient = createWalletClient({
chain: b3Testnet,
transport: http(),
account
})
// Initialize CreateKit services
const collectionManager = new CollectionManager(publicClient)
const rewardTracker = new RewardTracker(publicClient)
const storage = new BaseMintStorage({
baseUrl: 'https://api.basemint.fun'
})
```
--------------------------------
### Environment Variables Setup
Source: https://docs.b3.fun/createkit/installation
Shows how to create a `.env` file in the project root to store environment variables, such as the private key required for signing transactions.
```dotenv
# Required for signing transactions
PRIVATE_KEY=0x...
```
--------------------------------
### Initialize B3Provider
Source: https://docs.b3.fun/quickstart
Wraps your application's root with B3Provider to enable B3 services. Requires specifying the environment.
```javascript
import { B3Provider } from "@b3dotfun/sdk/global-account/react";
function App({
children
}) {
return (
{children}
);
}
```
--------------------------------
### Basic BondKit TokenFactory Initialization
Source: https://docs.b3.fun/bondkit/installation
Demonstrates how to initialize the BondkitTokenFactory for both server-side (using a private key) and client-side (using a wallet provider) applications. It imports necessary components from the BondKit SDK and viem.
```typescript
import { BondkitTokenFactory } from "@b3dotfun/sdk/bondkit";
import { base } from "viem/chains";
// For server-side usage with private key
const factory = new BondkitTokenFactory(
base.id,
process.env.WALLET_PRIVATE_KEY
);
// For client-side usage with wallet provider
const clientFactory = new BondkitTokenFactory(base.id);
await clientFactory.connect(window.ethereum);
```
--------------------------------
### Get Transactions cURL Example
Source: https://docs.b3.fun/data/api-reference/blockscout/get-transactions
Example of how to call the Get Transactions API endpoint using cURL.
```curl
curl --request GET \
--url https://data-api.b3.fun/blockscout/transactions
```
--------------------------------
### Get User Leaderboard Position Example
Source: https://docs.b3.fun/basement/api-reference/get-user-leaderboard-position
Example cURL request to get a user's position on the game leaderboard.
```curl
curl --request POST \
--url https://api.basement.fun/launcher \
--header 'Content-Type: application/json' \
--header 'X-Service-Method: getUsersPositionInGameScoreLeaderboard' \
--data '{
"gameId": "",
"wallet": ""
}'
```
--------------------------------
### B3 Network Setup and Bridging
Source: https://docs.b3.fun/anyspend/api-reference/introduction
Instructions for connecting to the B3 network, bridging assets to B3, and information about the testnet and bridging to the testnet.
```en
## [Connect to B3](https://docs.b3.fun/protocol/network-setup)
## [Bridge to B3](https://docs.b3.fun/protocol/bridge)
## [Testnet](https://docs.b3.fun/protocol/testnet)
## [Bridge to B3 Testnet](https://docs.b3.fun/protocol/bridge-to-testnet)
```
--------------------------------
### Get Transaction State Changes cURL Example
Source: https://docs.b3.fun/data/api-reference/blockscouttransactions/get-transaction-state-changes
Example of how to call the Get Transaction State Changes API endpoint using cURL.
```curl
curl --request GET \
--url https://data-api.b3.fun/blockscout/transactions/{transaction_hash}/state-changes
```
--------------------------------
### cURL Example for Get Token Instance Holders
Source: https://docs.b3.fun/data/api-reference/blockscouttokens/get-token-instance-holders
Example of how to call the Get Token Instance Holders API endpoint using cURL.
```cURL
curl --request GET \
--url https://data-api.b3.fun/blockscout/tokens/{address_hash}/instances/{id}/holders
```
--------------------------------
### Get Coinbase Onramp Options cURL Example
Source: https://docs.b3.fun/anyspend/api-reference/onramp/get-coinbase-onramp-options
Example of how to fetch Coinbase onramp options using a cURL GET request to the specified endpoint.
```curl
curl --request GET \
--url https://mainnet.anyspend.com/onramp/coinbase/options
```
--------------------------------
### Install B3 SDK
Source: https://docs.b3.fun/quickstart
Installs the B3 SDK package using npm. The SDK includes TypeScript definitions.
```bash
npm install @b3dotfun/sdk
```
--------------------------------
### Verify Collection Deployment and Get Info
Source: https://docs.b3.fun/createkit/quickstart
Verifies if the collection has been deployed and retrieves its information, including name, symbol, total supply, and max supply. It also checks the user's token balance.
```javascript
const isDeployed = await collection.isDeployed()
console.log(`π§ Collection deployed: ${isDeployed}`)
const info = await collection.getCollectionInfo()
console.log("π Collection Info:", {
name: info.name,
symbol: info.symbol,
totalSupply: info.totalSupply.toString(),
maxSupply: info.maxSupply.toString()
})
const balance = await collection.balanceOf(account.address)
console.log(`π° Your token balance: ${balance.toString()}`)
```