## 1. Project Overview & Quickstart (jarrodwatts/LICENSE)

# LICENSE

Open-source repository jarrodwatts/LICENSE

### Repository Details
- **Repository:** [jarrodwatts/LICENSE](https://github.com/jarrodwatts/LICENSE)
- **Primary Language:** Code

*Note: High-volume repository documentation is actively indexed and synchronized by YakaAI.*

## 2. Official Technical Reference & Guides (jarrodwatts/docs)

## File: README.md

# Website

This website is built using [Docusaurus 2](https://docusaurus.io/), a modern static website generator.

### Installation

```
$ yarn
```

### Local Development

```
$ yarn start
```

This command starts a local development server and opens up a browser window. Most changes are reflected live without having to restart the server.

### Build

```
$ yarn build
```

This command generates static content into the `build` directory and can be served using any static hosting service.

### Deployment

Using SSH:

```
$ USE_SSH=true yarn deploy
```

Not using SSH:

```
$ GIT_USER=<Your GitHub username> yarn deploy
```

If you are using GitHub pages for hosting, this command is a convenient way to build the website and push it to the `gh-pages` branch.

---

## File: package.json

{
  "name": "docs",
  "version": "0.0.0",
  "private": true,
  "scripts": {
    "docusaurus": "docusaurus",
    "dev": "yarn start",
    "start": "docusaurus start",
    "build": "docusaurus build",
    "swizzle": "docusaurus swizzle",
    "deploy": "docusaurus deploy",
    "clear": "docusaurus clear",
    "serve": "docusaurus serve",
    "write-translations": "docusaurus write-translations",
    "format": "prettier --write '(docs|guides|blog)/**/*.{js,jsx,ts,tsx,md,mdx}'",
    "write-heading-ids": "docusaurus write-heading-ids",
    "typecheck": "tsc",
    "generate-snippets": "node ./scripts/generate-snippets.mjs && node  ./scripts/generate-snippets-solana.mjs",
    "generate-github-examples": "node scripts/fetch-github-example-repos.mjs",
    "generate-example-pages": "node scripts/make-example-pages.mjs",
    "make-docs:typescript": "node scripts/make-typescript-docs.mjs",
    "make-docs:react": "node scripts/make-react-docs.mjs",
    "make-docs:storage": "node scripts/make-storage-docs.mjs",
    "make-docs:solana": "node scripts/make-solana-docs.mjs",
    "make-docs:contracts": "node scripts/make-contracts-docs.mjs",
    "make-docs:python": "node scripts/make-python-docs.mjs",
    "make-docs:go": "node scripts/make-go-docs.mjs",
    "make-docs:unity": "node scripts/make-unity-docs.mjs",
    "make-docs": "yarn make-docs:typescript && yarn make-docs:storage && yarn make-docs:solana && yarn make-docs:contracts && yarn make-docs:python && yarn make-docs:go && yarn make-docs:unity",
    "prettier": "prettier --write '(docs|guides|blog)/**/*.{js,jsx,ts,tsx,md,mdx}'"
  },
  "dependencies": {
    "@docusaurus/core": "^2.0.1",
    "@docusaurus/plugin-content-docs": "^2.0.1",
    "@docusaurus/plugin-ideal-image": "^2.0.1",
    "@docusaurus/preset-classic": "^2.0.1",
    "@docusaurus/remark-plugin-npm2yarn": "^2.0.1",
    "@mdx-js/react": "^1.6.21",
    "@thirdweb-dev/react": "^3",
    "@thirdweb-dev/sdk": "^3",
    "clsx": "^1.1.1",
    "docusaurus-node-polyfills": "^1.0.0",
    "docusaurus-plugin-sass": "^0.2.2",
    "ethers": "5",
    "posthog-docusaurus": "^1.0.3",
    "posthog-js": "^1.20.2",
    "prism-react-renderer": "^1.2.1",
    "react": "^18.2.0",
    "react-dom": "^18.2.0",
    "react-live": "^3.1.1",
    "react-transition-group": "^4.4.5",
    "sass": "^1.52.1"
  },
  "devDependencies": {
    "@docusaurus/module-type-aliases": "^2.0.1",
    "@swc/core": "^1.2.181",
    "@tsconfig/docusaurus": "^1.0.4",
    "@types/fs-extra": "^9.0.13",
    "docusaurus-plugin-module-alias": "^0.0.2",
    "fs-extra": "^10.0.1",
    "glob": "^8.0.1",
    "lokijs": "^1.5.12",
    "pino-pretty": "^10.0.0",
    "prettier": "^2.5.1",
    "readline": "^1.3.0",
    "swc-loader": "^0.2.0",
    "typescript": "^4.5.5"
  },
  "browserslist": {
    "production": [
      ">0.5%",
      "not dead",
      "not op_mini all"
    ],
    "development": [
      "last 1 chrome version",
      "last 1 firefox version",
      "last 1 safari version"
    ]
  }
}

---

## File: tsconfig.json

{
  // This file is not used in compilation. It is here just for a nice editor experience.
  "extends": "@tsconfig/docusaurus/tsconfig.json",
  "compilerOptions": {
    "baseUrl": ".",
    "resolveJsonModule": true
  }
}

---

## File: vercel.json

{
  "cleanUrls": true,
  "github": {
    "autoJobCancelation": true
  },
  "redirects": [
    {
      "source": "/learn/modules/:match*",
      "destination": "/contracts/:match*",
      "permanent": true
    },
    {
      "source": "/learn/recipes/:match*",
      "destination": "/guides",
      "permanent": true
    },
    {
      "source": "/guides/tag/bundle-collection",
      "destination": "/tag/edition",
      "permanent": true
    },
    {
      "source": "/guides/tag/bundle-drop",
      "destination": "/tag/edition-drop",
      "permanent": true
    },
    {
      "source": "/guides/bundle-collection",
      "destination": "/tag/edition",
      "permanent": true
    },
    {
      "source": "/guides/bundle-drop",
      "destination": "/tag/edition-drop",
      "permanent": true
    },
    {
      "source": "/guides/splits",
      "destination": "/tag/split",
      "permanent": true
    },
    {
      "source": "/guides/connect-wallet",
      "destination": "/guides/add-connectwallet-to-your-website",
      "permanent": true
    },
    {
      "source": "/guides/create-a-drop-with-thirdweb-dashboard",
      "destination": "/guides/release-an-nft-drop-with-no-code",
      "permanent": true
    },
    {
      "source": "/guides/minting-with-signature",
      "destination": "/guides/on-demand-minting",
      "permanent": true
    },
    {
      "source": "/learn/connect-to-blockchain",
      "destination": "/learn-thirdweb/connect-to-blockchain",
      "permanent": true
    },
    {
      "source": "/learn/projects",
      "destination": "/learn-thirdweb/projects",
      "permanent": true
    },
    {
      "source": "/learn",
      "destination": "/getting-started",
      "permanent": true
    },
    {
      "source": "/learn-thirdweb",
      "destination": "/getting-started",
      "permanent": true
    },
    {
      "source": "/learn-web3",
      "destination": "/getting-started",
      "permanent": true
    },
    {
      "source": "/learn-thirdweb/connect-to-blockchain",
      "destination": "/getting-started",
      "permanent": true
    },
    {
      "source": "/learn-thirdweb/quick-start-dev",
      "destination": "/getting-started",
      "permanent": true
    },
    {
      "source": "/guides/nft-drop",
      "destination": "/tag/nft-drop",
      "permanent": true
    },
    {
      "source": "/guides/nft-collection",
      "destination": "/tag/nft-collection",
      "permanent": true
    },
    {
      "source": "/guides/edition-drop",
      "destination": "/tag/edition-drop",
      "permanent": true
    },
    {
      "source": "/guides/edition",
      "destination": "/tag/edition",
      "permanent": true
    },
    {
      "source": "/guides/token",
      "destination": "/tag/token",
      "permanent": true
    },
    {
      "source": "/guides/vote",
      "destination": "/tag/vote",
      "permanent": true
    },
    {
      "source": "/guides/split",
      "destination": "/tag/split",
      "permanent": true
    },
    {
      "source": "/guides/marketplace",
      "destination": "/tag/marketplace",
      "permanent": true
    },
    {
      "source": "/guides/pack",
      "destination": "/tag/pack",
      "permanent": true
    },
    {
      "source": "/contracts/nft-drop",
      "destination": "/pre-built-contracts/nft-drop",
      "permanent": true
    },
    {
      "source": "/contracts/nft-collection",
      "destination": "/pre-built-contracts/nft-collection",
      "permanent": true
    },
    {
      "source": "/contracts/edition-drop",
      "destination": "/pre-built-contracts/edition-drop",
      "permanent": true
    },
    {
      "source": "/contracts/edition",
      "destination": "/pre-built-contracts/edition",
      "permanent": true
    },
    {
      "source": "/contracts/token-drop",
      "destination": "/pre-built-contracts/token-drop",
      "permanent": true
    },
    {
      "source": "/contracts/token",
      "destination": "/pre-built-contracts/token",
      "permanent": true
    },
    {
      "source": "/contracts/vote",
      "destination": "/pre-built-contracts/vote",
      "permanent": true
    },
    {
      "source": "/contracts/split",
      "destination": "/pre-built-contracts/split",
      "permanent": true
    },
    {
      "source": "/contracts/marketplace",
      "destination": "/pre-built-contracts/marketplace",
      "permanent": true
    },
    {
      "source": "/contracts/pack",
      "destination": "/pre-built-contracts/pack",
      "permanent": true
    },
    {
      "source": "/contracts/nfts-and-tokens",
      "destination": "/pre-built-contracts",
      "permanent": true
    },
    {
      "source": "/contracts/drops",
      "destination": "/pre-built-contracts",
      "permanent": true
    },
    {
      "source": "/contracts/governance",
      "destination": "/pre-built-contracts",
      "permanent": true
    },
    {
      "source": "/thirdweb-deploy/contract-features/:match*",
      "destination": "/solidity/extensions/:match*"
    },
    {
      "source": "/advanced-features/signature-based-minting",
      "destination": "/advanced-features/on-demand-minting"
    },
    {
      "source": "/guides/on-demand-minting",
      "destination": "/guides/mint-nft-unique-code",
      "permanent": true
    },
    {
      "source": "/guides/create-your-own-marketplace-with-thirdweb-typescript-sdk",
      "destination": "/guides/nft-marketplace-with-typescript-next",
      "permanent": true
    },
    {
      "source": "/guides/switch-between-networks",
      "destination": "/react/react.usenetwork"
    },
    {
      "source": "/installation",
      "destination": "/getting-started",
      "permanent": true
    },
    {
      "source": "/guides/create-a-pack-with-typescript-and-nextjs",
      "destination": "/guides/create-an-nft-lootbox",
      "permanent": true
    },
    {
      "source": "/examples",
      "destination": "/templates",
      "permanent": true
    },
    {
      "source": "/examples/:match*",
      "destination": "/templates/:match*",
      "permanent": true
    },
    {
      "source": "/thirdweb-deploy",
      "destination": "/thirdweb-cli",
      "permanent": true
    },
    {
      "source": "/thirdweb-cli",
      "destination": "/cli",
      "permanent": true
    },
    {
      "source": "/smart-contracts",
      "destination": "/pre-built-contracts",
      "permanent": true
    },
    {
      "source": "/building-web3-apps/setting-up-the-sdk",
      "destination": "/sdk",
      "permanent": true
    },
    {
      "source": "/building-web3-apps/setting-up-the-sdk/frontend",
      "destination": "/sdk/set-up-the-sdk/frontend",
      "permanent": true
    },
    {
      "source": "/building-web3-apps/setting-up-the-sdk/backend",
      "destination": "/sdk/set-up-the-sdk/backend",
      "permanent": true
    },
    {
      "source": "/building-web3-apps/authenticating-users",
      "destination": "/auth",
      "permanent": true
    },
    {
      "source": "/building-web3-apps/authenticating-users/quickstart",
      "destination": "/auth/quickstart",
      "permanent": true
    },
    {
      "source": "/building-web3-apps/authenticating-users/server-side-user-verification",
      "destination": "/auth/sign-in-with-web3",
      "permanent": true
    },
    {
      "source": "/building-web3-apps/authenticating-users/wallet-authentication",
      "destination": "/auth/remember-the-user",
      "permanent": true
    },
    {
      "source": "/building-web3-apps/authenticating-users/security-and-advanced-usage",
      "destination": "/auth/security-and-advanced-usage",
      "permanent": true
    },
    {
      "source": "/advanced-features/:match*",
      "destination": "/sdk/advanced-features/:match*",
      "permanent": true
    },
    {
      "source": "/thirdweb-deploy/features",
      "destination": "/solidity",
      "permanent": true
    },
    {
      "source": "/thirdweb-deploy/contract-extensions/quickstart",
      "destination": "/solidity"
    },
    {
      "source": "/pre-built-contracts/nfts",
      "destination": "/pre-built-contracts/choosing-the-right-pre-built-contract#nfts",
      "permanent": true
    },
    {
      "source": "/pre-built-contracts/tokens",
      "destination": "/pre-built-contracts/choosing-the-right-pre-built-contract#tokens",
      "permanent": true
    },
    {
      "source": "/pre-built-contracts/other",
      "destination": "/pre-built-contracts/choosing-the-right-pre-built-contract",
      "permanent": true
    },
    {
      "source": "/guides/randomized-nft-drop",
      "destination": "/guides/shuffle-nft-drop",
      "permanent": true
    },
    {
      "source": "/pre-built-contracts/other",
      "destination": "/pre-built-contracts/choosing-the-right-pre-built-contract",
      "permanent": true
    },
    {
      "source": "/typescript/category/built-in-contracts",
      "destination": "/typescript/category/pre-built-contracts"
    },
    {
      "source": "/react/category/contracts",
      "destination": "/react/react.usecontract"
    },
    {
      "source": "/react/category/wallet-connection",
      "destination": "/react/react.usemetamask"
    },
    {
      "source": "/contracts-sdk/quickstart",
      "destination": "/getting-started/contracts"
    },
    {
      "source": "/contracts-sdk/contract-extensions/signatureminting",
      "destination": "/solidity/extensions/signatureminterc721"
    },
    {
      "source": "/guides/sign-in-with-ethereum-using-thirdweb-connectwallet",
      "destination": "/auth"
    },
    {
      "source": "/web3-sdk",
      "destination": "/sdk"
    },
    {
      "source": "/web3-sdk/:match*",
      "destination": "/sdk/:match*"
    },
    {
      "source": "/contracts-sdk",
      "destination": "/solidity"
    },
    {
      "source": "/contracts-sdk/contract-extensions",
      "destination": "/solidity/extensions"
    },
    {
      "source": "/contracts-sdk/contract-extensions/:match*",
      "destination": "/solidity/extensions/:match*"
    },
    {
      "source": "/contracts-sdk/:match*",
      "destination": "/solidity/:match*"
    },
    {
      "source": "/guides",
      "destination": "https://blog.thirdweb.com/guides",
      "permanent": true
    },
    {
      "source": "/guides/:match*",
      "destination": "https://blog.thirdweb.com/guides/:match*",
      "permanent": true
    },
    {
      "source": "/tag/:match*",
      "destination": "https://blog.thirdweb.com/tag/:match*",
      "permanent": true
    },
    {
      "source": "/unity/connectwalletnative",
      "destination": "/unity/connectwallet",
      "permanent": true
    },
    {
      "source": "/unity/prefabs/thirdwebmanager",
      "destination": "/unity/thirdwebmanager",
      "permanent": true
    },
    {
      "source": "/sdk/connecting-to-a-wallet",
      "destination": "/ui-components/connectwalletbutton"
    },
    {
      "source": "/sdk/switching-networks",
      "destination": "/react/react.usenetwork"
    },
    {
      "source": "/contracts/signature-drop",
      "destination": "/pre-built-contracts/signature-drop"
    },
    {
      "source": "/getting-started/deploying-contracts",
      "destination": "/getting-started/contracts"
    },
    {
      "source": "/getting-started/configuring-contracts",
      "destination": "/getting-started/contracts"
    },
    {
      "source": "/getting-started/creating-nfts",
      "destination": "/getting-started/contracts"
    },
    {
      "source": "/contractkit/features",
      "destination": "/solidity/extensions"
    },
    {
      "source": "/contractkit/features/:match*",
      "destination": "/solidity/extensions"
    },
    {
      "source": "/create",
      "destination": "/sdk"
    },
    {
      "source": "/extensions",
      "destination": "/solidity"
    },
    {
      "source": "/extensions/:match*",
      "destination": "/solidity"
    },
    {
      "source": "/sdk/ui-components",
      "destination": "/ui-components"
    },
    {
      "source": "/getting-started/creating-custom-contracts",
      "destination": "/getting-started/contracts"
    },
    {
      "source": "/getting-started/building-app",
      "destination": "/getting-started/apps"
    },
    {
      "source": "/getting-started/releasing-custom-contracts",
      "destination": "/getting-started"
    },
    {
      "source": "/gaming-kit",
      "destination": "/gamingkit"
    },
    {
      "source": "/gaming-kit/:match*",
      "destination": "/gamingkit/:match*"
    },
    {
      "source": "/release",
      "destination": "/publish"
    },
    {
      "source": "/release/:match*",
      "destination": "/publish/:match*"
    },
    {
      "source": "/templates/nft-drop",
      "destination": "/templates"
    },
    {
      "source": "/templates/nft-drop/creating-the-nft-drop-contract",
      "destination": "/templates"
    },
    {
      "source": "/templates/nft-drop/lazy-minting-nfts",
      "destination": "/templates"
    },
    {
      "source": "/templates/nft-drop/creating-an-nft-minting-page",
      "destination": "/templates"
    },
    {
      "source": "/templates/marketplace",
      "destination": "/templates"
    },
    {
      "source": "/templates/marketplace/creating-the-marketplace-contract",
      "destination": "/templates"
    },
    {
      "source": "/templates/marketplace/listing-nfts-for-sale",
      "destination": "/templates"
    },
    {
      "source": "/templates/marketplace/exploring-the-example-repo",
      "destination": "/templates"
    },
    {
      "source": "/templates/token-gated-membership",
      "destination": "/templates"
    },
    {
      "source": "/templates/token-gated-membership/creating-the-nft-drop-contract",
      "destination": "/templates"
    },
    {
      "source": "/templates/token-gated-membership/using-the-example-repo",
      "destination": "/templates"
    },
    {
      "source": "/templates/token-gated-membership/exploring-the-example-repo",
      "destination": "/templates"
    },
    {
      "source": "/ui-components",
      "destination": "/react/react.web3button"
    },
    {
      "source": "/ui-components/web3button",
      "destination": "/react/react.web3button"
    },
    {
      "source": "/ui-components/connectwalletbutton",
      "destination": "/react/react.connectwallet"
    },
    {
      "source": "/ui-components/nft-renderer",
      "destination": "/react/react.thirdwebnftmedia"
    },
    {
      "source": "/ui-components/ipfs-media-renderer",
      "destination": "/react/react.mediarenderer"
    },
    {
      "source": "/sdk/set-up-the-sdk/frontend",
      "destination": "/sdk"
    },
    {
      "source": "/sdk/set-up-the-sdk/backend",
      "destination": "/sdk"
    },
    {
      "source": "/sdk/set-up-the-sdk/securing-your-private-key",
      "destination": "/typescript/sdk.thirdwebsdk.fromwallet"
    },
    {
      "source": "/sdk/wallet-actions",
      "destination": "/typescript/sdk.userwallet.balance"
    },
    {
      "source": "/sdk/advanced-features/on-demand-minting",
      "destination": "/glossary/signature-based-minting"
    },
    {
      "source": "/sdk/advanced-features/gasless-transactions",
      "destination": "/glossary/gasless-transactions"
    },
    {
      "source": "/sdk/advanced-features/delayed-reveal",
      "destination": "/glossary/delayed-reveal"
    },
    {
      "source": "/sdk/advanced-features/permission-controls",
      "destination": "/typescript/sdk.permissions"
    },
    {
      "source": "/sdk/advanced-features/non-transferable-tokens",
      "destination": "/glossary/soulbound"
    },
    {
      "source": "/sdk/advanced-features/gas-estimation-and-overrides",
      "destination": "/typescript/sdk.smartcontract.prepare"
    },
    {
      "source": "/sdk/advanced-features/contract-events",
      "destination": "/typescript/sdk.contractevents.getallevents"
    },
    {
      "source": "/sdk/interacting-with-contracts",
      "destination": "/sdk/how-it-works"
    },
    { "source": "/sdk/interacting-with-contracts/pack", "destination": "/sdk" },
    {
      "source": "/sdk/interacting-with-contracts/nft-drop",
      "destination": "/sdk"
    },
    {
      "source": "/sdk/interacting-with-contracts/signature-drop",
      "destination": "/sdk"
    },
    {
      "source": "/sdk/interacting-with-contracts/edition-drop",
      "destination": "/sdk"
    },
    {
      "source": "/sdk/interacting-with-contracts/nft-collection",
      "destination": "/sdk"
    },
    {
      "source": "/sdk/interacting-with-contracts/edition",
      "destination": "/sdk"
    },
    { "source": "/sdk/interacting-with-contracts/pack", "destination": "/sdk" },
    {
      "source": "/sdk/interacting-with-contracts/multiwrap",
      "destination": "/sdk"
    },
    {
      "source": "/sdk/interacting-with-contracts/token",
      "destination": "/sdk"
    },
    {
      "source": "/sdk/interacting-with-contracts/token-drop",
      "destination": "/sdk"
    },
    {
      "source": "/sdk/interacting-with-contracts/marketplace",
      "destination": "/sdk"
    },
    {
      "source": "/sdk/interacting-with-contracts/split",
      "destination": "/sdk"
    },
    {
      "source": "/sdk/interacting-with-contracts/vote",
      "destination": "/sdk"
    },
    {
      "source": "/contractkit",
      "destination": "/solidity"
    },
    {
      "source": "/contractkit/:match*",
      "destination": "/solidity"
    },
    {
      "source": "/storage-sdk",
      "destination": "/storage"
    },
    {
      "source": "/storage-sdk/:match*",
      "destination": "/storage"
    },
    {
      "source": "/storage/quickstart",
      "destination": "/storage"
    },
    {
      "source": "/storage/download",
      "destination": "/storage"
    },
    {
      "source": "/storage/upload/ipfs",
      "destination": "/storage"
    },
    {
      "source": "/contractkit/:match*",
      "destination": "/solidity"
    },
    {
      "source": "/contractkit/extensions-contracts",
      "destination": "/solidity/extensions"
    },
    {
      "source": "/contractkit/interfaces",
      "destination": "/solidity/extensions"
    },
    {
      "source": "/contractkit/interfaces/erc721signaturemintable",
      "destination": "/solidity/extensions/erc721singaturemint"
    },
    {
      "source": "/contractkit/interfaces/erc20signaturemintable",
      "destination": "/solidity/extensions/erc20singaturemint"
    },
    {
      "source": "/contractkit/interfaces/erc1155signaturemintable",
      "destination": "/solidity/extensions/erc1155singaturemint"
    },
    {
      "source": "/contractkit/interfaces/erc721lazymintable",
      "destination": "/solidity/extensions/lazymint"
    },
    {
      "source": "/contractkit/interfaces/erc1155lazymintable",
      "destination": "/solidity/extensions/lazymint"
    },
    {
      "source": "/contractkit/interfaces/erc20",
      "destination": "/solidity/extensions/erc20"
    },
    {
      "source": "/contractkit/interfaces/erc1155",
      "destination": "/solidity/extensions/erc1155"
    },
    {
      "source": "/contractkit/interfaces/erc721",
      "destination": "/solidity/extensions/erc721"
    },
    {
      "source": "/contractkit/extension-contracts/dropmultiphase",
      "destination": "/solidity/extensions/drop"
    },
    {
      "source": "/contractkit/extension-contracts/dropmultiphase1155",
      "destination": "/solidity/extensions/erc1155drop"
    },
    {
      "source": "/contractkit/extension-contracts/sigminterc721",
      "destination": "/solidity/extensions/erc721singaturemint"
    },
    {
      "source": "/contractkit/extension-contracts/sigminterc20",
      "destination": "/solidity/extensions/erc20singaturemint"
    },
    {
      "source": "/contractkit/extension-contracts/sigminterc1155",
      "destination": "/solidity/extensions/erc1155singaturemint"
    },
    {
      "source": "/contractkit/interfaces/erc721claimablewithconditions",
      "destination": "/solidity/extensions/erc721claimconditions"
    },
    {
      "source": "/contractkit/interfaces/erc1155claimablewithconditions",
      "destination": "/solidity/extensions/erc1155claimconditions"
    },
    {
      "source": "/contractkit/interfaces/erc20claimablewithconditions",
      "destination": "/solidity/extensions/erc20claimconditions"
    },
    {
      "source": "/quth/quickstart",
      "destination": "/auth/getting-started"
    },
    {
      "source": "/typescript/sdk.thirdwebsdk.detectfeatures",
      "destination": "/typescript/sdk.thirdwebsdk.detectextensions"
    },
    {
      "source": "/typescript/sdk.thirdwebsdk.getcontract",
      "destination": "/typescript/sdk.thirdwebsdk.smartcontract",
      "permanent": true
    },
    {
      "source": "/react/react.walletconnectv1",
      "destination": "/react/react.walletconnect",
      "permanent": true
    },
    {
      "source": "/react/react.usewalletconnectv1",
      "destination": "/react/react.usewalletconnect",
      "permanent": true
    },
    {
      "source": "/wallet/wallet-connect-v1",
      "destination": "/wallet/wallet-connect-v2",
      "permanent": true
    }
  ]
}

---

## File: docs/cli.json

{
  "create": [
    { "flags": ["--app"], "description": "Create a web3 app." },
    {
      "flags": ["--contract"],
      "description": "Create a web3 contract project"
    },
    {
      "flags": ["--ts", "--typescript"],
      "description": "Initialize as a TypeScript project."
    },
    {
      "flags": ["--js", "--javascript"],
      "description": "Initialize as a JavaScript project."
    },
    { "flags": ["--forge"], "description": "Initialize as a Forge project." },
    {
      "flags": ["--hardhat"],
      "description": "Initialize as a Hardhat project."
    },
    {
      "flags": ["--extension"],
      "description": "Create a smart contract extension."
    },
    {
      "flags": ["--cra"],
      "description": "Initialize as a Create React App project."
    },
    { "flags": ["--next"], "description": "Initialize as a Next.js project." },
    { "flags": ["--vite"], "description": "Initialize as a Vite project." },
    {
      "flags": ["--reactNative"],
      "description": "Initialize as a React Native project."
    },
    {
      "flags": ["--express"],
      "description": "Initialize as a Express project."
    },
    { "flags": ["--node"], "description": "Initialize as a Node project." },
    {
      "flags": ["--use-npm"],
      "description": "Explicitly tell the CLI to bootstrap the app using npm."
    },
    {
      "flags": ["--use-pnpm"],
      "description": "Explicitly tell the CLI to bootstrap the app using pnpm."
    },
    { "flags": ["--framework"], "description": "The preferred framework." },
    { "flags": ["--solana"], "description": "Initialize as a Solana project." },
    { "flags": ["--evm"], "description": "Initialize as an Ethereum project." },
    {
      "flags": ["--template"],
      "description": "A template to start your project from. You can use an template repository name from the official thirdweb-example org."
    },
    {
      "flags": ["--contract-name"],
      "description": "Name of the new smart contract to create"
    }
  ],
  "install": [
    {
      "flags": ["--nightly"],
      "description": "Install the nightly version of packages."
    },
    {
      "flags": ["--dev"],
      "description": "Install the dev version of packages."
    },
    {
      "flags": ["--debug"],
      "description": "Show debug logs"
    }
  ],
  "build": [
    {
      "flags": ["-c", "--clean"],
      "description": "Clear the cache before building"
    },
    { "flags": ["-p", "--path <string>"], "description": "Path to project" },
    { "flags": ["-d", "--debug"], "description": "Show debug logs" },
    {
      "flags": ["-a", "--all"],
      "description": "Run detection on all contracts"
    }
  ],
  "deploy": [
    { "flags": ["-p", "--path <string>"], "description": "Path to project" },
    {
      "flags": ["-c", "--clean"],
      "description": "Clear the cache before building"
    },
    {
      "flags": ["--dry-run"],
      "description": "Dry run (skip actually publishing)"
    },
    { "flags": ["-d", "--debug"], "description": "Show debug logs" },
    { "flags": ["--ci"], "description": "Continuous Integration mode" },
    {
      "flags": ["--dist-path <string>"],
      "description": "Path to the dist folder where the HTML based App is"
    },
    {
      "flags": ["-n", "--name <string>"],
      "description": "Name of the pre-built or published contract (such as nft-drop)"
    },
    {
      "flags": ["-f", "--file <string>"],
      "description": "Filter for contract files that contain this file name"
    },
    {
      "flags": ["-cn", "--contract-name <string>"],
      "description": "Filter for contracts that contain this contract name"
    },
    {
      "flags": ["-cv", "--contract-version <string>"],
      "description": "Version of the published contract"
    },
    {
      "flags": ["--app"],
      "description": "Deploy a web app to decentralized storage"
    },
    {
      "flags": ["--contract"],
      "description": "Deploy a smart contract to blockchains"
    },
    {
      "flags": ["--dynamic"],
      "description": "Deploy a dynamic smart contract made up of extensions to blockchains"
    }
  ],
  "publish": [
    { "flags": ["-p", "--path <string>"], "description": "Path to project" },
    {
      "flags": ["-f", "--file <string>"],
      "description": "Filter for contract files that contain this file name"
    },
    {
      "flags": ["-cn", "--contract-name <string>"],
      "description": "Filter for contracts that contain this contract name"
    },
    {
      "flags": ["-c", "--clean"],
      "description": "Clear the cache before building"
    },
    {
      "flags": ["--dry-run"],
      "description": "Dry run (skip actually publishing)"
    },
    { "flags": ["-d", "--debug"], "description": "Show debug logs" },
    { "flags": ["--ci"], "description": "Continuous Integration mode" }
  ],
  "upload": [],
  "generate": [
    { "flags": ["-p", "--path <string>"], "description": "Path to project" }
  ]
}

---

## File: docs/example-repos.json

[
  {
    "name": "3d-asset-nft-script",
    "html_url": "https://github.com/thirdweb-example/3d-asset-nft-script",
    "description": "Use the SDK to mint 3D asset NFTs for your Unity games!",
    "created_at": "2022-12-11T23:41:42Z",
    "updated_at": "2023-05-09T03:07:56Z",
    "clone_url": "https://github.com/thirdweb-example/3d-asset-nft-script.git",
    "topics": [],
    "language": "TypeScript",
    "stargazers_count": 5,
    "is_template": false,
    "homepage": null
  },
  {
    "name": "airdrop-nfts-to-holders",
    "html_url": "https://github.com/thirdweb-example/airdrop-nfts-to-holders",
    "description": "Airdrop ERC1155 NFTs to wallet addresses that hold an NFT from your ERC721 Collection!",
    "created_at": "2022-10-24T04:09:42Z",
    "updated_at": "2023-03-08T12:31:24Z",
    "clone_url": "https://github.com/thirdweb-example/airdrop-nfts-to-holders.git",
    "topics": [],
    "language": "JavaScript",
    "stargazers_count": 4,
    "is_template": false,
    "homepage": null
  },
  {
    "name": "anvil-local-node",
    "html_url": "https://github.com/thirdweb-example/anvil-local-node",
    "description": "Burn to Evolve NFT contract with front-end. Deployed and tested on Anvil local node",
    "created_at": "2023-02-10T14:23:59Z",
    "updated_at": "2023-03-11T05:49:34Z",
    "clone_url": "https://github.com/thirdweb-example/anvil-local-node.git",
    "topics": [
      "anvil",
      "contract-kit",
      "forge",
      "foundry",
      "react",
      "react-sdk",
      "solidity",
      "typescript"
    ],
    "language": "Solidity",
    "stargazers_count": 2,
    "is_template": true,
    "homepage": "https://anvil-local-node.thirdweb-preview.com/"
  },
  {
    "name": "artblocks",
    "html_url": "https://github.com/thirdweb-example/artblocks",
    "description": "Create Generative Art NFTs with centralized metadata using the Contracts SDK",
    "created_at": "2022-08-23T02:16:31Z",
    "updated_at": "2023-01-17T23:35:21Z",
    "clone_url": "https://github.com/thirdweb-example/artblocks.git",
    "topics": [
      "contract-kit",
      "extensions"
    ],
    "language": "JavaScript",
    "stargazers_count": 4,
    "is_template": false,
    "homepage": ""
  },
  {
    "name": "burn1155-mint721",
    "html_url": "https://github.com/thirdweb-example/burn1155-mint721",
    "description": "Similar to the MAYC collection, allow users who hold an NFT from your original NFT Collection to burn an ERC-1155 NFT collection to claim an NFT from your new NFT Collection!",
    "created_at": "2022-09-12T11:18:00Z",
    "updated_at": "2023-04-29T03:48:44Z",
    "clone_url": "https://github.com/thirdweb-example/burn1155-mint721.git",
    "topics": [
      "contract-kit",
      "erc1155",
      "erc721",
      "extensions"
    ],
    "language": "CSS",
    "stargazers_count": 14,
    "is_template": false,
    "homepage": ""
  },
  {
    "name": "catattacknft",
    "html_url": "https://github.com/thirdweb-example/catattacknft",
    "description": "Claim your cat, attack others, and accumulate points to win!",
    "created_at": "2022-08-26T20:48:18Z",
    "updated_at": "2023-06-22T23:05:39Z",
    "clone_url": "https://github.com/thirdweb-example/catattacknft.git",
    "topics": [],
    "language": "TypeScript",
    "stargazers_count": 88,
    "is_template": false,
    "homepage": "https://catattacknft.vercel.app"
  },
  {
    "name": "catattacknft-react-native",
    "html_url": "https://github.com/thirdweb-example/catattacknft-react-native",
    "description": null,
    "created_at": "2023-03-13T23:21:48Z",
    "updated_at": "2023-04-25T18:53:48Z",
    "clone_url": "https://github.com/thirdweb-example/catattacknft-react-native.git",
    "topics": [],
    "language": "TypeScript",
    "stargazers_count": 2,
    "is_template": false,
    "homepage": null
  },
  {
    "name": "community-rewards",
    "html_url": "https://github.com/thirdweb-example/community-rewards",
    "description": "Reward your community using NFTs and thirdweb's signature based minting.",
    "created_at": "2022-05-22T23:33:24Z",
    "updated_at": "2023-05-11T08:34:03Z",
    "clone_url": "https://github.com/thirdweb-example/community-rewards.git",
    "topics": [
      "nft-collection",
      "signature-based-minting"
    ],
    "language": "JavaScript",
    "stargazers_count": 24,
    "is_template": false,
    "homepage": "https://community-rewards.thirdweb-example.com"
  },
  {
    "name": "connect-wallet-button",
    "html_url": "https://github.com/thirdweb-example/connect-wallet-button",
    "description": "Learn how to use the ConnectWallet Button component from the React SDK!",
    "created_at": "2022-08-23T04:29:36Z",
    "updated_at": "2023-06-04T11:59:35Z",
    "clone_url": "https://github.com/thirdweb-example/connect-wallet-button.git",
    "topics": [
      "ui-components"
    ],
    "language": "JavaScript",
    "stargazers_count": 8,
    "is_template": false,
    "homepage": "https://connectwallet.thirdweb-example.com/"
  },
  {
    "name": "contract-hub",
    "html_url": "https://github.com/thirdweb-example/contract-hub",
    "description": "Demonstration of all thirdweb's pre-built contracts with TypeScript + Getting started snippets",
    "created_at": "2022-05-03T10:20:11Z",
    "updated_at": "2023-06-04T17:34:59Z",
    "clone_url": "https://github.com/thirdweb-example/contract-hub.git",
    "topics": [
      "demo",
      "thirdweb"
    ],
    "language": "TypeScript",
    "stargazers_count": 18,
    "is_template": false,
    "homepage": "https://contract-hub.thirdweb-example.com/"
  },
  {
    "name": "contracts-sdk-with-extensions",
    "html_url": "https://github.com/thirdweb-example/contracts-sdk-with-extensions",
    "description": "Build your own NFT Collection with Solidity using thirdweb deploy and the thirdweb SDK",
    "created_at": "2022-06-16T01:35:06Z",
    "updated_at": "2023-01-16T10:32:05Z",
    "clone_url": "https://github.com/thirdweb-example/contracts-sdk-with-extensions.git",
    "topics": [
      "contract-kit",
      "extensions",
      "thirdweb-deploy"
    ],
    "language": "JavaScript",
    "stargazers_count": 1,
    "is_template": false,
    "homepage": ""
  },
  {
    "name": "covalent",
    "html_url": "https://github.com/thirdweb-example/covalent",
    "description": "Load the tokens a wallet owns using the covalent API",
    "created_at": "2022-07-07T07:04:15Z",
    "updated_at": "2023-02-05T03:00:37Z",
    "clone_url": "https://github.com/thirdweb-example/covalent.git",
    "topics": [
      "wallets"
    ],
    "language": "CSS",
    "stargazers_count": 3,
    "is_template": false,
    "homepage": "https://covalent.thirdweb-example.com"
  },
  {
    "name": "cra-javascript-solana-starter",
    "html_url": "https://github.com/thirdweb-example/cra-javascript-solana-starter",
    "description": "thirdweb Solana starter project with Create React App & JavaScript",
    "created_at": "2022-10-13T20:52:33Z",
    "updated_at": "2022-11-23T22:16:12Z",
    "clone_url": "https://github.com/thirdweb-example/cra-javascript-solana-starter.git",
    "topics": [
      "javascript",
      "react",
      "solana",
      "starter-kit"
    ],
    "language": "JavaScript",
    "stargazers_count": 0,
    "is_template": false,
    "homepage": "cra-javascript-solana-starter.vercel.app"
  },
  {
    "name": "cra-javascript-starter",
    "html_url": "https://github.com/thirdweb-example/cra-javascript-starter",
    "description": "thirdweb starter project with Create React App & JavaScript",
    "created_at": "2022-03-18T00:31:36Z",
    "updated_at": "2023-06-06T11:55:44Z",
    "clone_url": "https://github.com/thirdweb-example/cra-javascript-starter.git",
    "topics": [
      "javascript",
      "react",
      "starter-kit"
    ],
    "language": "JavaScript",
    "stargazers_count": 23,
    "is_template": true,
    "homepage": "https://cra-javascript-starter.thirdweb-example.com"
  },
  {
    "name": "cra-typescript-solana-starter",
    "html_url": "https://github.com/thirdweb-example/cra-typescript-solana-starter",
    "description": "Starter kit for Create React App, thirdweb, Solana, and TypeScript",
    "created_at": "2022-11-17T03:22:45Z",
    "updated_at": "2022-11-29T02:53:16Z",
    "clone_url": "https://github.com/thirdweb-example/cra-typescript-solana-starter.git",
    "topics": [],
    "language": "TypeScript",
    "stargazers_count": 1,
    "is_template": false,
    "homepage": "cra-typescript-solana-starter.vercel.app"
  },
  {
    "name": "cra-typescript-starter",
    "html_url": "https://github.com/thirdweb-example/cra-typescript-starter",
    "description": "thirdweb starter project with Create React App & TypeScript",
    "created_at": "2022-03-17T23:44:42Z",
    "updated_at": "2023-05-09T02:58:29Z",
    "clone_url": "https://github.com/thirdweb-example/cra-typescript-starter.git",
    "topics": [
      "react",
      "starter-kit",
      "typescript"
    ],
    "language": "TypeScript",
    "stargazers_count": 11,
    "is_template": true,
    "homepage": "https://cra-typescript-starter.thirdweb-example.com"
  },
  {
    "name": "creator-platform",
    "html_url": "https://github.com/thirdweb-example/creator-platform",
    "description": "Authenticate users into a web2 database to build a hybrid web2+web3 creator platform!",
    "created_at": "2022-09-23T01:22:38Z",
    "updated_at": "2023-06-23T05:32:52Z",
    "clone_url": "https://github.com/thirdweb-example/creator-platform.git",
    "topics": [
      "auth",
      "prisma",
      "web2"
    ],
    "language": "TypeScript",
    "stargazers_count": 15,
    "is_template": false,
    "homepage": ""
  },
  {
    "name": "custom-currency-claim-conditions",
    "html_url": "https://github.com/thirdweb-example/custom-currency-claim-conditions",
    "description": "Set up your claim conditions so that holders of your NFT collection can purchase in a custom token.",
    "created_at": "2022-11-17T03:36:49Z",
    "updated_at": "2023-04-20T14:42:22Z",
    "clone_url": "https://github.com/thirdweb-example/custom-currency-claim-conditions.git",
    "topics": [],
    "language": "JavaScript",
    "stargazers_count": 3,
    "is_template": false,
    "homepage": null
  },
  {
    "name": "custom-dashboard",
    "html_url": "https://github.com/thirdweb-example/custom-dashboard",
    "description": "Use thirdweb's sdk.deployer to deploy any pre-built contract dynamically with no private keys!",
    "created_at": "2022-05-11T05:41:53Z",
    "updated_at": "2023-03-11T15:14:58Z",
    "clone_url": "https://github.com/thirdweb-example/custom-dashboard.git",
    "topics": [
      "contracts",
      "sdk",
      "sdk-deployer"
    ],
    "language": "TypeScript",
    "stargazers_count": 4,
    "is_template": false,
    "homepage": "https://custom-dashboard.thirdweb-example.com"
  },
  {
    "name": "dao",
    "html_url": "https://github.com/thirdweb-example/dao",
    "description": "Build a DAO using thirdweb's vote, token, and edition drop contracts.",
    "created_at": "2022-05-17T11:42:42Z",
    "updated_at": "2023-05-09T03:03:28Z",
    "clone_url": "https://github.com/thirdweb-example/dao.git",
    "topics": [
      "edition-drop",
      "token",
      "vote"
    ],
    "language": "JavaScript",
    "stargazers_count": 22,
    "is_template": false,
    "homepage": "https://dao.thirdweb-example.com"
  },
  {
    "name": "device-wallet-api-tester",
    "html_url": "https://github.com/thirdweb-example/device-wallet-api-tester",
    "description": "Device Wallet API tester",
    "created_at": "2023-04-14T20:52:55Z",
    "updated_at": "2023-04-14T20:53:18Z",
    "clone_url": "https://github.com/thirdweb-example/device-wallet-api-tester.git",
    "topics": [],
    "language": "TypeScript",
    "stargazers_count": 0,
    "is_template": false,
    "homepage": null
  },
  {
    "name": "dex-app",
    "html_url": "https://github.com/thirdweb-example/dex-app",
    "description": "DEX app to sell your tokens to the public!",
    "created_at": "2023-04-14T14:52:29Z",
    "updated_at": "2023-05-26T11:53:40Z",
    "clone_url": "https://github.com/thirdweb-example/dex-app.git",
    "topics": [],
    "language": "TypeScript",
    "stargazers_count": 1,
    "is_template": false,
    "homepage": null
  },
  {
    "name": "dex-contracts",
    "html_url": "https://github.com/thirdweb-example/dex-contracts",
    "description": "DEX contracts to accompany the DEX app",
    "created_at": "2023-05-26T11:56:01Z",
    "updated_at": "2023-06-07T02:49:55Z",
    "clone_url": "https://github.com/thirdweb-example/dex-contracts.git",
    "topics": [],
    "language": "Solidity",
    "stargazers_count": 1,
    "is_template": false,
    "homepage": null
  },
  {
    "name": "discord-role-granter",
    "html_url": "https://github.com/thirdweb-example/discord-role-granter",
    "description": "Grant users who own NFTs a role in your Discord server!",
    "created_at": "2022-07-22T03:52:48Z",
    "updated_at": "2023-06-10T18:37:57Z",
    "clone_url": "https://github.com/thirdweb-example/discord-role-granter.git",
    "topics": [
      "auth",
      "authentication",
      "wallet-connection"
    ],
    "language": "TypeScript",
    "stargazers_count": 12,
    "is_template": false,
    "homepage": "https://discord-role-granter.thirdweb-example.com/"
  },
  {
    "name": "dynamic-free-mint",
    "html_url": "https://github.com/thirdweb-example/dynamic-free-mint",
    "description": null,
    "created_at": "2022-11-21T19:51:22Z",
    "updated_at": "2023-04-20T05:27:36Z",
    "clone_url": "https://github.com/thirdweb-example/dynamic-free-mint.git",
    "topics": [],
    "language": "TypeScript",
    "stargazers_count": 1,
    "is_template": false,
    "homepage": null
  },
  {
    "name": "dynamic-pricing",
    "html_url": "https://github.com/thirdweb-example/dynamic-pricing",
    "description": "Set a dynamic pricing for your Signature Drop collection NFTs",
    "created_at": "2022-11-01T16:14:54Z",
    "updated_at": "2023-01-02T21:15:20Z",
    "clone_url": "https://github.com/thirdweb-example/dynamic-pricing.git",
    "topics": [],
    "language": "JavaScript",
    "stargazers_count": 1,
    "is_template": false,
    "homepage": null
  },
  {
    "name": "edition-drop",
    "html_url": "https://github.com/thirdweb-example/edition-drop",
    "description": "Starter kit for using the Edition Drop Pre-Built contract",
    "created_at": "2022-07-05T01:19:38Z",
    "updated_at": "2023-05-09T18:06:21Z",
    "clone_url": "https://github.com/thirdweb-example/edition-drop.git",
    "topics": [
      "edition-drop"
    ],
    "language": "TypeScript",
    "stargazers_count": 15,
    "is_template": false,
    "homepage": "https://edition-drop.thirdweb-example.com"
  },
  {
    "name": "edition-staking-app",
    "html_url": "https://github.com/thirdweb-example/edition-staking-app",
    "description": "ERC1155 NFT Staking smart contract and web application. Allow users to stake their edition NFTs and earn erc20 tokens as reward!",
    "created_at": "2023-01-22T23:28:16Z",
    "updated_at": "2023-05-18T12:38:41Z",
    "clone_url": "https://github.com/thirdweb-example/edition-staking-app.git",
    "topics": [],
    "language": "TypeScript",
    "stargazers_count": 4,
    "is_template": false,
    "homepage": null
  },
  {
    "name": "erc-6551",
    "html_url": "https://github.com/thirdweb-example/erc-6551",
    "description": null,
    "created_at": "2023-05-27T00:44:17Z",
    "updated_at": "2023-06-07T02:49:58Z",
    "clone_url": "https://github.com/thirdweb-example/erc-6551.git",
    "topics": [],
    "language": "Solidity",
    "stargazers_count": 2,
    "is_template": false,
    "homepage": null
  },
  {
    "name": "erc1155",
    "html_url": "https://github.com/thirdweb-example/erc1155",
    "description": null,
    "created_at": "2023-03-07T20:10:34Z",
    "updated_at": "2023-05-18T04:48:17Z",
    "clone_url": "https://github.com/thirdweb-example/erc1155.git",
    "topics": [],
    "language": "TypeScript",
    "stargazers_count": 1,
    "is_template": false,
    "homepage": "https://erc1155.thirdweb-preview.com"
  },
  {
    "name": "erc20",
    "html_url": "https://github.com/thirdweb-example/erc20",
    "description": null,
    "created_at": "2023-05-16T18:14:29Z",
    "updated_at": "2023-05-18T04:47:54Z",
    "clone_url": "https://github.com/thirdweb-example/erc20.git",
    "topics": [],
    "language": "TypeScript",
    "stargazers_count": 0,
    "is_template": false,
    "homepage": "https://erc20.thirdweb-preview.com"
  },
  {
    "name": "erc20-staking-app",
    "html_url": "https://github.com/thirdweb-example/erc20-staking-app",
    "description": "Allow users to stake their ERC20 tokens in return for more/other ERC20 tokens!",
    "created_at": "2023-01-27T08:07:46Z",
    "updated_at": "2023-06-22T12:58:07Z",
    "clone_url": "https://github.com/thirdweb-example/erc20-staking-app.git",
    "topics": [
      "staking",
      "token"
    ],
    "language": "JavaScript",
    "stargazers_count": 9,
    "is_template": false,
    "homepage": "https://erc20-staking-app.thirdweb-example.com/"
  },
  {
    "name": "erc721staking-lockup",
    "html_url": "https://github.com/thirdweb-example/erc721staking-lockup",
    "description": "NFT Staking contract with lockup period",
    "created_at": "2023-01-09T07:19:08Z",
    "updated_at": "2023-06-21T08:00:06Z",
    "clone_url": "https://github.com/thirdweb-example/erc721staking-lockup.git",
    "topics": [],
    "language": "TypeScript",
    "stargazers_count": 8,
    "is_template": false,
    "homepage": null
  },
  {
    "name": "express-javascript-solana-starter",
    "html_url": "https://github.com/thirdweb-example/express-javascript-solana-starter",
    "description": "Starter template for Express.js and the thirdweb Solana SDK.",
    "created_at": "2023-01-10T03:56:28Z",
    "updated_at": "2023-05-18T19:19:22Z",
    "clone_url": "https://github.com/thirdweb-example/express-javascript-solana-starter.git",
    "topics": [],
    "language": "JavaScript",
    "stargazers_count": 2,
    "is_template": false,
    "homepage": null
  },
  {
    "name": "express-javascript-starter",
    "html_url": "https://github.com/thirdweb-example/express-javascript-starter",
    "description": "Starter template for Express.js and the thirdweb SDK",
    "created_at": "2023-01-10T03:55:53Z",
    "updated_at": "2023-01-27T03:36:11Z",
    "clone_url": "https://github.com/thirdweb-example/express-javascript-starter.git",
    "topics": [],
    "language": "JavaScript",
    "stargazers_count": 0,
    "is_template": false,
    "homepage": null
  },
  {
    "name": "express-typescript-solana-starter",
    "html_url": "https://github.com/thirdweb-example/express-typescript-solana-starter",
    "description": "Starter template for Express.js, TypeScript, and the thirdweb Solana SDK.",
    "created_at": "2023-01-10T03:16:50Z",
    "updated_at": "2023-02-03T18:34:13Z",
    "clone_url": "https://github.com/thirdweb-example/express-typescript-solana-starter.git",
    "topics": [],
    "language": "TypeScript",
    "stargazers_count": 1,
    "is_template": false,
    "homepage": ""
  },
  {
    "name": "express-typescript-starter",
    "html_url": "https://github.com/thirdweb-example/express-typescript-starter",
    "description": "Starter template for Express.js, Typescript, and the thirdweb TypeScript SDK",
    "created_at": "2023-01-10T03:17:42Z",
    "updated_at": "2023-02-03T18:34:24Z",
    "clone_url": "https://github.com/thirdweb-example/express-typescript-starter.git",
    "topics": [],
    "language": "TypeScript",
    "stargazers_count": 1,
    "is_template": false,
    "homepage": null
  },
  {
    "name": "firebase-auth",
    "html_url": "https://github.com/thirdweb-example/firebase-auth",
    "description": "Integrate sign in with Ethereum using thirdweb Auth into your Firebase application",
    "created_at": "2022-09-09T03:34:01Z",
    "updated_at": "2023-05-09T03:03:40Z",
    "clone_url": "https://github.com/thirdweb-example/firebase-auth.git",
    "topics": [
      "auth",
      "firebase",
      "web2"
    ],
    "language": "TypeScript",
    "stargazers_count": 14,
    "is_template": false,
    "homepage": "https://firebase-auth.thirdweb-example.com/"
  },
  {
    "name": "forge-starter",
    "html_url": "https://github.com/thirdweb-example/forge-starter",
    "description": "thirdweb contracts starter project for Forge",
    "created_at": "2022-08-02T21:35:35Z",
    "updated_at": "2023-06-23T14:12:30Z",
    "clone_url": "https://github.com/thirdweb-example/forge-starter.git",
    "topics": [
      "forge",
      "solidity",
      "starter-kit"
    ],
    "language": "Solidity",
    "stargazers_count": 3,
    "is_template": false,
    "homepage": ""
  },
  {
    "name": "full-stack-web3-app",
    "html_url": "https://github.com/thirdweb-example/full-stack-web3-app",
    "description": "Build an application on top of a custom contract using the thirdweb SDK",
    "created_at": "2022-06-15T06:28:28Z",
    "updated_at": "2023-06-09T08:50:51Z",
    "clone_url": "https://github.com/thirdweb-example/full-stack-web3-app.git",
    "topics": [
      "contract-kit",
      "extensions",
      "thirdweb-deploy"
    ],
    "language": "JavaScript",
    "stargazers_count": 12,
    "is_template": false,
    "homepage": ""
  },
  {
    "name": "gelato-gasless",
    "html_url": "https://github.com/thirdweb-example/gelato-gasless",
    "description": null,
    "created_at": "2023-02-06T19:35:51Z",
    "updated_at": "2023-02-10T19:26:49Z",
    "clone_url": "https://github.com/thirdweb-example/gelato-gasless.git",
    "topics": [],
    "language": null,
    "stargazers_count": 1,
    "is_template": false,
    "homepage": null
  },
  {
    "name": "getting-started",
    "html_url": "https://github.com/thirdweb-example/getting-started",
    "description": "Get started with thirdweb by building and deploying a full project including a smart contract and react application.",
    "created_at": "2022-09-15T05:36:12Z",
    "updated_at": "2023-06-20T13:30:55Z",
    "clone_url": "https://github.com/thirdweb-example/getting-started.git",
    "topics": [
      "contract-kit",
      "extensions",
      "ui-components"
    ],
    "language": "JavaScript",
    "stargazers_count": 4,
    "is_template": false,
    "homepage": ""
  },
  {
    "name": "gin-go-starter",
    "html_url": "https://github.com/thirdweb-example/gin-go-starter",
    "description": null,
    "created_at": "2023-06-06T06:30:46Z",
    "updated_at": "2023-06-06T06:31:28Z",
    "clone_url": "https://github.com/thirdweb-example/gin-go-starter.git",
    "topics": [],
    "language": "Go",
    "stargazers_count": 0,
    "is_template": false,
    "homepage": null
  },
  {
    "name": "github-contributor-nft-rewards",
    "html_url": "https://github.com/thirdweb-example/github-contributor-nft-rewards",
    "description": "Use signature-based minting to allow users who have contributed to your github repositories to claim an NFT!",
    "created_at": "2022-08-29T23:19:26Z",
    "updated_at": "2023-05-26T19:44:21Z",
    "clone_url": "https://github.com/thirdweb-example/github-contributor-nft-rewards.git",
    "topics": [
      "auth",
      "signature-based-minting"
    ],
    "language": "TypeScript",
    "stargazers_count": 12,
    "is_template": false,
    "homepage": "https://github-contributor-nft-rewards.thirdweb-example.com/"
  },
  {
    "name": "gnosis-safe",
    "html_url": "https://github.com/thirdweb-example/gnosis-safe",
    "description": "Allow users to connect their Gnosis Safe wallets to your dApp!",
    "created_at": "2023-02-17T01:25:04Z",
    "updated_at": "2023-04-26T21:44:05Z",
    "clone_url": "https://github.com/thirdweb-example/gnosis-safe.git",
    "topics": [
      "wallet-connection"
    ],
    "language": "TypeScript",
    "stargazers_count": 1,
    "is_template": false,
    "homepage": "https://gnosis-safe.thirdweb-preview.com"
  },
  {
    "name": "go-signature-mint",
    "html_url": "https://github.com/thirdweb-example/go-signature-mint",
    "description": null,
    "created_at": "2023-05-24T04:20:19Z",
    "updated_at": "2023-06-09T19:01:21Z",
    "clone_url": "https://github.com/thirdweb-example/go-signature-mint.git",
    "topics": [],
    "language": "Go",
    "stargazers_count": 1,
    "is_template": false,
    "homepage": null
  },
  {
    "name": "gryfyn-wallet",
    "html_url": "https://github.com/thirdweb-example/gryfyn-wallet",
    "description": "Gryfyn Wallet Demo",
    "created_at": "2023-06-16T21:19:55Z",
    "updated_at": "2023-06-16T23:22:11Z",
    "clone_url": "https://github.com/thirdweb-example/gryfyn-wallet.git",
    "topics": [],
    "language": "TypeScript",
    "stargazers_count": 0,
    "is_template": false,
    "homepage": null
  },
  {
    "name": "hardhat-javascript-starter",
    "html_url": "https://github.com/thirdweb-example/hardhat-javascript-starter",
    "description": "thirdweb contracts starter project for Hardhat & TypeScript",
    "created_at": "2022-07-29T02:19:53Z",
    "updated_at": "2023-05-26T08:19:44Z",
    "clone_url": "https://github.com/thirdweb-example/hardhat-javascript-starter.git",
    "topics": [
      "hardhat",
      "solidity",
      "starter-kit"
    ],
    "language": "JavaScript",
    "stargazers_count": 5,
    "is_template": false,
    "homepage": ""
  },
  {
    "name": "hardhat-local-node",
    "html_url": "https://github.com/thirdweb-example/hardhat-local-node",
    "description": "Deploy your smart contracts to a local node and use the thirdweb SDK to interact with them",
    "created_at": "2023-02-09T10:58:41Z",
    "updated_at": "2023-02-16T04:59:34Z",
    "clone_url": "https://github.com/thirdweb-example/hardhat-local-node.git",
    "topics": [],
    "language": "TypeScript",
    "stargazers_count": 1,
    "is_template": false,
    "homepage": "https://hardhat-local-node.thirdweb-preview.com"
  },
  {
    "name": "hardhat-starter",
    "html_url": "https://github.com/thirdweb-example/hardhat-starter",
    "description": "A simple hardhat project with a customized ERC-721 drop contract.",
    "created_at": "2023-05-22T11:22:27Z",
    "updated_at": "2023-05-22T11:27:59Z",
    "clone_url": "https://github.com/thirdweb-example/hardhat-starter.git",
    "topics": [],
    "language": "Solidity",
    "stargazers_count": 0,
    "is_template": false,
    "homepage": null
  },
  {
    "name": "hardhat-typescript-starter",
    "html_url": "https://github.com/thirdweb-example/hardhat-typescript-starter",
    "description": "thirdweb contracts starter project for Hardhat & TypeScript",
    "created_at": "2022-07-29T01:58:49Z",
    "updated_at": "2023-05-09T09:56:03Z",
    "clone_url": "https://github.com/thirdweb-example/hardhat-typescript-starter.git",
    "topics": [
      "hardhat",
      "solidity",
      "starter-kit"
    ],
    "language": "TypeScript",
    "stargazers_count": 4,
    "is_template": false,
    "homepage": ""
  },
  {
    "name": "ipfs-media-renderer",
    "html_url": "https://github.com/thirdweb-example/ipfs-media-renderer",
    "description": "Render any asset stored on IPFS using our SDK's UI Components",
    "created_at": "2022-10-31T02:38:56Z",
    "updated_at": "2023-01-02T21:15:34Z",
    "clone_url": "https://github.com/thirdweb-example/ipfs-media-renderer.git",
    "topics": [
      "react",
      "ui-components"
    ],
    "language": "TypeScript",
    "stargazers_count": 1,
    "is_template": false,
    "homepage": ""
  },
  {
    "name": "lens",
    "html_url": "https://github.com/thirdweb-example/lens",
    "description": "Starter kit for using Lens Protocol with the thirdweb SDK!",
    "created_at": "2022-10-27T10:15:02Z",
    "updated_at": "2023-05-10T20:28:34Z",
    "clone_url": "https://github.com/thirdweb-example/lens.git",
    "topics": [
      "lens-protocol"
    ],
    "language": "TypeScript",
    "stargazers_count": 38,
    "is_template": false,
    "homepage": "https://lens.thirdweb-example.com/"
  },
  {
    "name": "login-with-wallet",
    "html_url": "https://github.com/thirdweb-example/login-with-wallet",
    "description": "Authenticate to a backend using the sign in with ethereum standard provided by thirdweb auth",
    "created_at": "2022-06-03T16:04:25Z",
    "updated_at": "2023-01-02T21:09:41Z",
    "clone_url": "https://github.com/thirdweb-example/login-with-wallet.git",
    "topics": [
      "auth",
      "wallet-connection"
    ],
    "language": "TypeScript",
    "stargazers_count": 16,
    "is_template": false,
    "homepage": ""
  },
  {
    "name": "magic-link",
    "html_url": "https://github.com/thirdweb-example/magic-link",
    "description": "Connect users to your dApp using just their email using thirdweb's useMagic hook!",
    "created_at": "2022-04-27T07:03:18Z",
    "updated_at": "2023-05-24T19:08:03Z",
    "clone_url": "https://github.com/thirdweb-example/magic-link.git",
    "topics": [
      "nextjs",
      "typescript",
      "wallet-connection"
    ],
    "language": "TypeScript",
    "stargazers_count": 20,
    "is_template": false,
    "homepage": "https://magic-link.thirdweb-example.com"
  },
  {
    "name": "mailchain-drop",
    "html_url": "https://github.com/thirdweb-example/mailchain-drop",
    "description": null,
    "created_at": "2023-01-16T15:32:52Z",
    "updated_at": "2023-01-25T16:24:12Z",
    "clone_url": "https://github.com/thirdweb-example/mailchain-drop.git",
    "topics": [],
    "language": null,
    "stargazers_count": 0,
    "is_template": false,
    "homepage": null
  },
  {
    "name": "makeswift",
    "html_url": "https://github.com/thirdweb-example/makeswift",
    "description": "Use Makeswift to build a web3 application using a drag-and-drop web builder",
    "created_at": "2022-07-25T21:35:43Z",
    "updated_at": "2023-06-06T01:22:10Z",
    "clone_url": "https://github.com/thirdweb-example/makeswift.git",
    "topics": [
      "no-code"
    ],
    "language": "TypeScript",
    "stargazers_count": 6,
    "is_template": false,
    "homepage": ""
  },
  {
    "name": "marketplace",
    "html_url": "https://github.com/thirdweb-example/marketplace",
    "description": "An NFT Marketplace where you can list NFTs for direct sale or for auction. Users can come and bid on your listings or buy your NFTs, similar to OpenSea.",
    "created_at": "2022-04-27T23:59:14Z",
    "updated_at": "2023-06-15T19:40:28Z",
    "clone_url": "https://github.com/thirdweb-example/marketplace.git",
    "topics": [
      "marketplace",
      "nextjs",
      "typescript"
    ],
    "language": "TypeScript",
    "stargazers_count": 67,
    "is_template": false,
    "homepage": "https://marketplace.thirdweb-example.com"
  },
  {
    "name": "marketplace-v3",
    "html_url": "https://github.com/thirdweb-example/marketplace-v3",
    "description": "Create your own NFT marketplace where users can buy and sell NFTs!",
    "created_at": "2023-01-31T03:33:27Z",
    "updated_at": "2023-06-20T07:48:55Z",
    "clone_url": "https://github.com/thirdweb-example/marketplace-v3.git",
    "topics": [
      "marketplace",
      "nft-marketplace"
    ],
    "language": "TypeScript",
    "stargazers_count": 46,
    "is_template": false,
    "homepage": "https://marketplace-v3.thirdweb-preview.com"
  },
  {
    "name": "marketplace-with-signature-based-minting",
    "html_url": "https://github.com/thirdweb-example/marketplace-with-signature-based-minting",
    "description": "Mint and list NFTs on to a marketplace using signature-based minting",
    "created_at": "2022-07-26T07:48:49Z",
    "updated_at": "2023-05-10T07:30:04Z",
    "clone_url": "https://github.com/thirdweb-example/marketplace-with-signature-based-minting.git",
    "topics": [
      "marketplace"
    ],
    "language": "JavaScript",
    "stargazers_count": 11,
    "is_template": false,
    "homepage": "https://marketplace-with-signature-based-minting.thirdweb-example.com/"
  },
  {
    "name": "mint-specific-nft",
    "html_url": "https://github.com/thirdweb-example/mint-specific-nft",
    "description": "Allow users to choose which NFT they want to mint from the collection",
    "created_at": "2023-01-27T10:39:45Z",
    "updated_at": "2023-05-09T15:18:23Z",
    "clone_url": "https://github.com/thirdweb-example/mint-specific-nft.git",
    "topics": [
      "nft-collection",
      "signature-based-minting"
    ],
    "language": "TypeScript",
    "stargazers_count": 7,
    "is_template": false,
    "homepage": "https://mint-specific-nft.thirdweb-example.com"
  },
  {
    "name": "multiwrap",
    "html_url": "https://github.com/thirdweb-example/multiwrap",
    "description": "Wrap ERC-1155, ERC-721 and ERC-20 tokens in to one ERC-721 token",
    "created_at": "2022-06-03T00:27:59Z",
    "updated_at": "2023-06-04T17:36:50Z",
    "clone_url": "https://github.com/thirdweb-example/multiwrap.git",
    "topics": [
      "multiwrap"
    ],
    "language": "JavaScript",
    "stargazers_count": 12,
    "is_template": false,
    "homepage": ""
  },
  {
    "name": "next-javascript-solana-starter",
    "html_url": "https://github.com/thirdweb-example/next-javascript-solana-starter",
    "description": "Starter Kit for Next.js + JavaScript + Solana",
    "created_at": "2022-10-13T00:08:23Z",
    "updated_at": "2023-05-09T09:48:40Z",
    "clone_url": "https://github.com/thirdweb-example/next-javascript-solana-starter.git",
    "topics": [
      "solana",
      "starter-kit"
    ],
    "language": "JavaScript",
    "stargazers_count": 4,
    "is_template": false,
    "homepage": "https://next-javascript-solana-starter.thirdweb-example.com/"
  },
  {
    "name": "next-javascript-starter",
    "html_url": "https://github.com/thirdweb-example/next-javascript-starter",
    "description": "thirdweb starter project with Next.js & JavaScript",
    "created_at": "2022-03-17T23:05:32Z",
    "updated_at": "2023-05-09T02:57:50Z",
    "clone_url": "https://github.com/thirdweb-example/next-javascript-starter.git",
    "topics": [
      "javascript",
      "nextjs",
      "react",
      "starter-kit"
    ],
    "language": "JavaScript",
    "stargazers_count": 28,
    "is_template": true,
    "homepage": "https://next-javascript-starter.thirdweb-example.com"
  },
  {
    "name": "next-typescript-solana-starter",
    "html_url": "https://github.com/thirdweb-example/next-typescript-solana-starter",
    "description": "Starter Kit for Next.js + TypeScript + Solana",
    "created_at": "2022-09-20T06:27:03Z",
    "updated_at": "2023-04-11T15:54:38Z",
    "clone_url": "https://github.com/thirdweb-example/next-typescript-solana-starter.git",
    "topics": [
      "solana",
      "starter-kit"
    ],
    "language": "TypeScript",
    "stargazers_count": 8,
    "is_template": false,
    "homepage": "https://next-typescript-solana-starter.thirdweb-example.com/"
  },
  {
    "name": "next-typescript-starter",
    "html_url": "https://github.com/thirdweb-example/next-typescript-starter",
    "description": "thirdweb starter project with Next.js & TypeScript",
    "created_at": "2022-03-17T18:18:45Z",
    "updated_at": "2023-06-23T15:55:06Z",
    "clone_url": "https://github.com/thirdweb-example/next-typescript-starter.git",
    "topics": [
      "nextjs",
      "starter-kit",
      "typescript",
      "web3",
      "web3-dapp",
      "web3-javascript",
      "web3-react",
      "web3js"
    ],
    "language": "TypeScript",
    "stargazers_count": 52,
    "is_template": true,
    "homepage": "https://next-typescript-starter.thirdweb-example.com"
  },
  {
    "name": "nft-drop",
    "html_url": "https://github.com/thirdweb-example/nft-drop",
    "description": "Create an NFT minting page using thirdweb's React SDK",
    "created_at": "2022-05-16T01:17:47Z",
    "updated_at": "2023-06-13T14:37:40Z",
    "clone_url": "https://github.com/thirdweb-example/nft-drop.git",
    "topics": [
      "nft-drop"
    ],
    "language": "TypeScript",
    "stargazers_count": 101,
    "is_template": false,
    "homepage": "https://nft-drop.thirdweb-preview.com/"
  },
  {
    "name": "nft-gallery",
    "html_url": "https://github.com/thirdweb-example/nft-gallery",
    "description": "Create a gallery of NFTs from an NFT Collection",
    "created_at": "2023-01-27T02:51:22Z",
    "updated_at": "2023-06-10T12:22:07Z",
    "clone_url": "https://github.com/thirdweb-example/nft-gallery.git",
    "topics": [
      "nft-drop",
      "ui-components"
    ],
    "language": "TypeScript",
    "stargazers_count": 8,
    "is_template": false,
    "homepage": "https://nft-gallery.thirdweb-preview.com/"
  },
  {
    "name": "nft-gated-website",
    "html_url": "https://github.com/thirdweb-example/nft-gated-website",
    "description": "Restrict access to content based on the ownership of an NFT",
    "created_at": "2022-04-08T17:59:57Z",
    "updated_at": "2023-06-21T23:02:38Z",
    "clone_url": "https://github.com/thirdweb-example/nft-gated-website.git",
    "topics": [
      "auth",
      "authentication",
      "edition-drop",
      "javascript",
      "react",
      "wallet-connection"
    ],
    "language": "JavaScript",
    "stargazers_count": 125,
    "is_template": false,
    "homepage": "https://nft-gated-website.thirdweb-example.com"
  },
  {
    "name": "nft-gated-website-solana",
    "html_url": "https://github.com/thirdweb-example/nft-gated-website-solana",
    "description": "Restrict access to content on your website to NFT Holders in Solana!",
    "created_at": "2022-10-13T03:16:16Z",
    "updated_at": "2023-04-13T19:48:07Z",
    "clone_url": "https://github.com/thirdweb-example/nft-gated-website-solana.git",
    "topics": [
      "auth",
      "solana"
    ],
    "language": "TypeScript",
    "stargazers_count": 8,
    "is_template": false,
    "homepage": "https://nft-gated-website-solana.thirdweb-example.com"
  },
  {
    "name": "nft-staking-app",
    "html_url": "https://github.com/thirdweb-example/nft-staking-app",
    "description": "An NFT Staking contract deployed using thirdweb deploy, where users stake their ERC721 tokens and earn ERC20 tokens in return!",
    "created_at": "2022-05-31T05:09:19Z",
    "updated_at": "2023-05-31T12:57:01Z",
    "clone_url": "https://github.com/thirdweb-example/nft-staking-app.git",
    "topics": [
      "erc20",
      "erc721",
      "ethereum",
      "nft-staking",
      "solidity",
      "staking"
    ],
    "language": "TypeScript",
    "stargazers_count": 109,
    "is_template": false,
    "homepage": "https://nft-staking-contract.thirdweb-example.com/"
  },
  {
    "name": "node-javascript-solana-starter",
    "html_url": "https://github.com/thirdweb-example/node-javascript-solana-starter",
    "description": "Starter template for Node.js and thirdweb's Solana SDK",
    "created_at": "2023-01-09T02:36:32Z",
    "updated_at": "2023-04-21T16:44:40Z",
    "clone_url": "https://github.com/thirdweb-example/node-javascript-solana-starter.git",
    "topics": [],
    "language": "JavaScript",
    "stargazers_count": 0,
    "is_template": false,
    "homepage": null
  },
  {
    "name": "node-javascript-starter",
    "html_url": "https://github.com/thirdweb-example/node-javascript-starter",
    "description": "Starter template repository for Node.js and the thirdweb SDK",
    "created_at": "2023-01-09T02:35:55Z",
    "updated_at": "2023-05-26T08:09:44Z",
    "clone_url": "https://github.com/thirdweb-example/node-javascript-starter.git",
    "topics": [],
    "language": "JavaScript",
    "stargazers_count": 2,
    "is_template": false,
    "homepage": null
  },
  {
    "name": "node-typescript-solana-starter",
    "html_url": "https://github.com/thirdweb-example/node-typescript-solana-starter",
    "description": "Starter template for Node.js, TypeScript and the thirdweb Solana SDK",
    "created_at": "2023-01-09T02:37:01Z",
    "updated_at": "2023-01-27T02:36:36Z",
    "clone_url": "https://github.com/thirdweb-example/node-typescript-solana-starter.git",
    "topics": [],
    "language": "TypeScript",
    "stargazers_count": 2,
    "is_template": false,
    "homepage": null
  },
  {
    "name": "node-typescript-starter",
    "html_url": "https://github.com/thirdweb-example/node-typescript-starter",
    "description": "A starter template project for creating Node.js scripts with TypeScript and the thirdweb TypeScript SDK",
    "created_at": "2023-01-09T00:49:10Z",
    "updated_at": "2023-01-09T02:35:24Z",
    "clone_url": "https://github.com/thirdweb-example/node-typescript-starter.git",
    "topics": [],
    "language": "TypeScript",
    "stargazers_count": 0,
    "is_template": false,
    "homepage": null
  },
  {
    "name": "on-chain-nft-metadata",
    "html_url": "https://github.com/thirdweb-example/on-chain-nft-metadata",
    "description": "Create & deploy an ERC721 NFT Collection with on-chain NFT metadata with ContractKit ",
    "created_at": "2022-11-09T04:12:00Z",
    "updated_at": "2022-11-09T04:16:02Z",
    "clone_url": "https://github.com/thirdweb-example/on-chain-nft-metadata.git",
    "topics": [],
    "language": "Solidity",
    "stargazers_count": 0,
    "is_template": false,
    "homepage": null
  },
  {
    "name": "pack-creation-script",
    "html_url": "https://github.com/thirdweb-example/pack-creation-script",
    "description": null,
    "created_at": "2022-11-30T03:55:04Z",
    "updated_at": "2023-04-03T18:58:11Z",
    "clone_url": "https://github.com/thirdweb-example/pack-creation-script.git",
    "topics": [],
    "language": "TypeScript",
    "stargazers_count": 1,
    "is_template": false,
    "homepage": null
  },
  {
    "name": "packs",
    "html_url": "https://github.com/thirdweb-example/packs",
    "description": "Bundle NFTs and Tokens together in Packs that users can open and receive randomly selected tokens from those that were bundled!",
    "created_at": "2022-06-21T07:50:46Z",
    "updated_at": "2023-05-18T09:43:16Z",
    "clone_url": "https://github.com/thirdweb-example/packs.git",
    "topics": [
      "pack"
    ],
    "language": "TypeScript",
    "stargazers_count": 5,
    "is_template": false,
    "homepage": "https://packs.thirdweb-example.com"
  },
  {
    "name": "paper-thirdweb",
    "html_url": "https://github.com/thirdweb-example/paper-thirdweb",
    "description": null,
    "created_at": "2023-04-27T16:48:34Z",
    "updated_at": "2023-04-30T15:17:23Z",
    "clone_url": "https://github.com/thirdweb-example/paper-thirdweb.git",
    "topics": [],
    "language": "CSS",
    "stargazers_count": 1,
    "is_template": false,
    "homepage": null
  },
  {
    "name": "phaser-platformer",
    "html_url": "https://github.com/thirdweb-example/phaser-platformer",
    "description": null,
    "created_at": "2023-01-13T16:58:19Z",
    "updated_at": "2023-01-31T00:20:59Z",
    "clone_url": "https://github.com/thirdweb-example/phaser-platformer.git",
    "topics": [],
    "language": "TypeScript",
    "stargazers_count": 1,
    "is_template": false,
    "homepage": null
  },
  {
    "name": "play-to-earn-game",
    "html_url": "https://github.com/thirdweb-example/play-to-earn-game",
    "description": "Use thirdweb's token, edition drop, and a custom contract using thirdweb deploy to build a Play-to-Earn game!",
    "created_at": "2022-06-22T11:24:30Z",
    "updated_at": "2023-06-11T21:17:37Z",
    "clone_url": "https://github.com/thirdweb-example/play-to-earn-game.git",
    "topics": [
      "contract-kit",
      "erc1155",
      "erc20",
      "erc721",
      "extensions",
      "thirdweb-deploy"
    ],
    "language": "TypeScript",
    "stargazers_count": 46,
    "is_template": false,
    "homepage": "https://play-to-earn.thirdweb-example.com"
  },
  {
    "name": "react-native-expo-starter",
    "html_url": "https://github.com/thirdweb-example/react-native-expo-starter",
    "description": null,
    "created_at": "2023-03-15T04:42:29Z",
    "updated_at": "2023-03-15T04:45:35Z",
    "clone_url": "https://github.com/thirdweb-example/react-native-expo-starter.git",
    "topics": [],
    "language": "Java",
    "stargazers_count": 0,
    "is_template": false,
    "homepage": null
  },
  {
    "name": "react-native-javascript-starter",
    "html_url": "https://github.com/thirdweb-example/react-native-javascript-starter",
    "description": null,
    "created_at": "2022-11-09T06:00:00Z",
    "updated_at": "2023-01-02T21:15:46Z",
    "clone_url": "https://github.com/thirdweb-example/react-native-javascript-starter.git",
    "topics": [],
    "language": "JavaScript",
    "stargazers_count": 1,
    "is_template": false,
    "homepage": null
  },
  {
    "name": "react-native-nft-drop",
    "html_url": "https://github.com/thirdweb-example/react-native-nft-drop",
    "description": null,
    "created_at": "2023-03-27T05:28:57Z",
    "updated_at": "2023-03-30T23:32:55Z",
    "clone_url": "https://github.com/thirdweb-example/react-native-nft-drop.git",
    "topics": [],
    "language": "Java",
    "stargazers_count": 3,
    "is_template": false,
    "homepage": null
  },
  {
    "name": "react-native-typescript-starter",
    "html_url": "https://github.com/thirdweb-example/react-native-typescript-starter",
    "description": null,
    "created_at": "2022-11-02T02:03:17Z",
    "updated_at": "2023-05-29T11:02:23Z",
    "clone_url": "https://github.com/thirdweb-example/react-native-typescript-starter.git",
    "topics": [],
    "language": "Java",
    "stargazers_count": 9,
    "is_template": false,
    "homepage": null
  },
  {
    "name": "reddit",
    "html_url": "https://github.com/thirdweb-example/reddit",
    "description": "Create a seamless user experience with email sign in and pay the gas for minting NFTs.",
    "created_at": "2022-11-05T01:31:43Z",
    "updated_at": "2023-05-09T03:04:21Z",
    "clone_url": "https://github.com/thirdweb-example/reddit.git",
    "topics": [
      "nft-drop"
    ],
    "language": "TypeScript",
    "stargazers_count": 5,
    "is_template": false,
    "homepage": "https://reddit.thirdweb-example.com/"
  },
  {
    "name": "seamless-stripe-checkout",
    "html_url": "https://github.com/thirdweb-example/seamless-stripe-checkout",
    "description": "Use Magic.link to authenticate users using their email, then we use stripe to collect payment for the NFTs and send them to the user's wallet generated by Magic.",
    "created_at": "2023-01-13T17:47:53Z",
    "updated_at": "2023-05-24T10:08:52Z",
    "clone_url": "https://github.com/thirdweb-example/seamless-stripe-checkout.git",
    "topics": [
      "auth",
      "wallet-connection"
    ],
    "language": "TypeScript",
    "stargazers_count": 10,
    "is_template": false,
    "homepage": "https://seamless-stripe-checkout.thirdweb-example.com"
  },
  {
    "name": "shopify-discount-codes",
    "html_url": "https://github.com/thirdweb-example/shopify-discount-codes",
    "description": "Grant users who hold an NFT from your collection a discount code they can use in your Shopify store!",
    "created_at": "2022-10-04T23:36:42Z",
    "updated_at": "2023-06-17T09:25:20Z",
    "clone_url": "https://github.com/thirdweb-example/shopify-discount-codes.git",
    "topics": [],
    "language": "TypeScript",
    "stargazers_count": 11,
    "is_template": false,
    "homepage": null
  },
  {
    "name": "shopify-sell-nfts",
    "html_url": "https://github.com/thirdweb-example/shopify-sell-nfts",
    "description": "Sell NFTs in FIAT currency using a Shopify store and webhooks!",
    "created_at": "2022-10-06T01:28:05Z",
    "updated_at": "2023-05-11T02:59:33Z",
    "clone_url": "https://github.com/thirdweb-example/shopify-sell-nfts.git",
    "topics": [],
    "language": "JavaScript",
    "stargazers_count": 10,
    "is_template": false,
    "homepage": null
  },
  {
    "name": "sign-in-button",
    "html_url": "https://github.com/thirdweb-example/sign-in-button",
    "description": "Simple starter kit for Auth and the ConnectWallet button",
    "created_at": "2022-10-18T03:16:26Z",
    "updated_at": "2023-02-19T15:29:59Z",
    "clone_url": "https://github.com/thirdweb-example/sign-in-button.git",
    "topics": [],
    "language": "JavaScript",
    "stargazers_count": 2,
    "is_template": false,
    "homepage": "sign-in-button.vercel.app"
  },
  {
    "name": "sign-in-with-solana",
    "html_url": "https://github.com/thirdweb-example/sign-in-with-solana",
    "description": "Verify a user owns their wallet in a server-side environment using Sign In With Solana!",
    "created_at": "2022-10-13T01:04:41Z",
    "updated_at": "2023-06-08T22:23:50Z",
    "clone_url": "https://github.com/thirdweb-example/sign-in-with-solana.git",
    "topics": [
      "auth",
      "solana"
    ],
    "language": "TypeScript",
    "stargazers_count": 6,
    "is_template": false,
    "homepage": "https://sign-in-with-solana.thirdweb-example.com"
  },
  {
    "name": "signature-based-minting",
    "html_url": "https://github.com/thirdweb-example/signature-based-minting",
    "description": "Create a community-made NFT collection with restrictions that you specify using signature based minting in thirdweb's NFT Collection contract.",
    "created_at": "2022-04-07T20:17:43Z",
    "updated_at": "2023-05-22T19:24:52Z",
    "clone_url": "https://github.com/thirdweb-example/signature-based-minting.git",
    "topics": [
      "nextjs",
      "nft-collection",
      "signature-based-minting",
      "typescript"
    ],
    "language": "TypeScript",
    "stargazers_count": 37,
    "is_template": false,
    "homepage": "https://signature-based-minting.thirdweb-example.com"
  },
  {
    "name": "signature-drop",
    "html_url": "https://github.com/thirdweb-example/signature-drop",
    "description": "Use the signature drop pre-built contract to claim NFTs under a claim phase as well as claim using signature-based minting!",
    "created_at": "2022-07-14T23:58:52Z",
    "updated_at": "2023-06-23T09:09:35Z",
    "clone_url": "https://github.com/thirdweb-example/signature-drop.git",
    "topics": [
      "signature-drop"
    ],
    "language": "TypeScript",
    "stargazers_count": 17,
    "is_template": false,
    "homepage": "http://signature-drop.thirdweb-example.com/"
  },
  {
    "name": "signature-minting",
    "html_url": "https://github.com/thirdweb-example/signature-minting",
    "description": "Authorize users to mint on your NFT collection using a backend infrastructure",
    "created_at": "2023-06-14T13:40:01Z",
    "updated_at": "2023-06-22T18:44:35Z",
    "clone_url": "https://github.com/thirdweb-example/signature-minting.git",
    "topics": [],
    "language": "JavaScript",
    "stargazers_count": 1,
    "is_template": false,
    "homepage": "https://signature-minting.thirdweb-preview.com"
  },
  {
    "name": "smart-wallet-nodejs",
    "html_url": "https://github.com/thirdweb-example/smart-wallet-nodejs",
    "description": "Connecting and interacting with smart wallets in a Node.js script",
    "created_at": "2023-05-04T11:37:54Z",
    "updated_at": "2023-05-04T11:40:32Z",
    "clone_url": "https://github.com/thirdweb-example/smart-wallet-nodejs.git",
    "topics": [],
    "language": "JavaScript",
    "stargazers_count": 0,
    "is_template": false,
    "homepage": null
  },
  {
    "name": "smart-wallet-react",
    "html_url": "https://github.com/thirdweb-example/smart-wallet-react",
    "description": "Connecting and interacting using smart wallets in a React app",
    "created_at": "2023-05-04T11:41:45Z",
    "updated_at": "2023-05-31T11:08:21Z",
    "clone_url": "https://github.com/thirdweb-example/smart-wallet-react.git",
    "topics": [],
    "language": "JavaScript",
    "stargazers_count": 3,
    "is_template": false,
    "homepage": null
  },
  {
    "name": "smart-wallet-script",
    "html_url": "https://github.com/thirdweb-example/smart-wallet-script",
    "description": "Simple Smart Wallet demo in node.js",
    "created_at": "2023-05-10T05:06:20Z",
    "updated_at": "2023-05-20T07:30:32Z",
    "clone_url": "https://github.com/thirdweb-example/smart-wallet-script.git",
    "topics": [],
    "language": "TypeScript",
    "stargazers_count": 4,
    "is_template": false,
    "homepage": null
  },
  {
    "name": "solana-hub",
    "html_url": "https://github.com/thirdweb-example/solana-hub",
    "description": "Explore what you can do with our Solana SDK!",
    "created_at": "2022-09-20T02:19:53Z",
    "updated_at": "2023-06-05T05:32:54Z",
    "clone_url": "https://github.com/thirdweb-example/solana-hub.git",
    "topics": [
      "solana"
    ],
    "language": "TypeScript",
    "stargazers_count": 8,
    "is_template": false,
    "homepage": "https://solana-hub.thirdweb-example.com/"
  },
  {
    "name": "solana-nft-gallery",
    "html_url": "https://github.com/thirdweb-example/solana-nft-gallery",
    "description": "Build an NFT Gallery showcasing all of your collection's NFTs on Solana!",
    "created_at": "2022-10-26T01:06:53Z",
    "updated_at": "2023-05-31T17:06:06Z",
    "clone_url": "https://github.com/thirdweb-example/solana-nft-gallery.git",
    "topics": [
      "nft-collection",
      "solana"
    ],
    "language": "TypeScript",
    "stargazers_count": 4,
    "is_template": false,
    "homepage": "https://solana-nft-gallery.thirdweb-example.com"
  },
  {
    "name": "solana-token-deploy",
    "html_url": "https://github.com/thirdweb-example/solana-token-deploy",
    "description": "Deploy a token program using the TypeScript SDK",
    "created_at": "2022-09-27T08:25:47Z",
    "updated_at": "2023-05-31T14:37:15Z",
    "clone_url": "https://github.com/thirdweb-example/solana-token-deploy.git",
    "topics": [
      "solana"
    ],
    "language": "JavaScript",
    "stargazers_count": 4,
    "is_template": false,
    "homepage": ""
  },
  {
    "name": "solidity-hello-world",
    "html_url": "https://github.com/thirdweb-example/solidity-hello-world",
    "description": "Build and deploy a simple hello world smart contract using our contract kit!",
    "created_at": "2022-06-15T00:12:56Z",
    "updated_at": "2023-01-02T21:14:25Z",
    "clone_url": "https://github.com/thirdweb-example/solidity-hello-world.git",
    "topics": [
      "blockchain",
      "contract-kit",
      "ethereum",
      "extensions",
      "solidity",
      "thirdweb-deploy"
    ],
    "language": "JavaScript",
    "stargazers_count": 2,
    "is_template": false,
    "homepage": ""
  },
  {
    "name": "thirdweb-auth-express",
    "html_url": "https://github.com/thirdweb-example/thirdweb-auth-express",
    "description": "Enable wallet-based login with thirdweb Auth & Express",
    "created_at": "2022-08-19T15:40:00Z",
    "updated_at": "2023-05-27T00:59:56Z",
    "clone_url": "https://github.com/thirdweb-example/thirdweb-auth-express.git",
    "topics": [
      "auth"
    ],
    "language": "TypeScript",
    "stargazers_count": 4,
    "is_template": false,
    "homepage": ""
  },
  {
    "name": "thirdweb-auth-fiber",
    "html_url": "https://github.com/thirdweb-example/thirdweb-auth-fiber",
    "description": "Enable wallet-based login with thirdweb Auth & Fiber",
    "created_at": "2022-08-30T00:08:03Z",
    "updated_at": "2023-01-02T21:14:42Z",
    "clone_url": "https://github.com/thirdweb-example/thirdweb-auth-fiber.git",
    "topics": [
      "auth"
    ],
    "language": "TypeScript",
    "stargazers_count": 2,
    "is_template": false,
    "homepage": ""
  },
  {
    "name": "thirdweb-auth-flask",
    "html_url": "https://github.com/thirdweb-example/thirdweb-auth-flask",
    "description": "Enable wallet-based login with thirdweb Auth & Flask",
    "created_at": "2022-08-30T00:17:55Z",
    "updated_at": "2023-05-17T16:32:30Z",
    "clone_url": "https://github.com/thirdweb-example/thirdweb-auth-flask.git",
    "topics": [
      "auth",
      "flask",
      "python"
    ],
    "language": "TypeScript",
    "stargazers_count": 3,
    "is_template": false,
    "homepage": ""
  },
  {
    "name": "thirdweb-auth-next",
    "html_url": "https://github.com/thirdweb-example/thirdweb-auth-next",
    "description": "Enable wallet-based login with thirdweb Auth & Next",
    "created_at": "2022-08-18T20:13:40Z",
    "updated_at": "2023-06-10T10:21:19Z",
    "clone_url": "https://github.com/thirdweb-example/thirdweb-auth-next.git",
    "topics": [
      "auth"
    ],
    "language": "TypeScript",
    "stargazers_count": 13,
    "is_template": false,
    "homepage": ""
  },
  {
    "name": "thirdweb-auth-next-auth",
    "html_url": "https://github.com/thirdweb-example/thirdweb-auth-next-auth",
    "description": "Enable wallet-based login with thirdweb Auth & Next Auth",
    "created_at": "2022-08-30T21:44:52Z",
    "updated_at": "2023-05-14T04:50:59Z",
    "clone_url": "https://github.com/thirdweb-example/thirdweb-auth-next-auth.git",
    "topics": [
      "auth",
      "nextauth"
    ],
    "language": "TypeScript",
    "stargazers_count": 11,
    "is_template": false,
    "homepage": ""
  },
  {
    "name": "thirdweb-auth-solana-next",
    "html_url": "https://github.com/thirdweb-example/thirdweb-auth-solana-next",
    "description": "Enable wallet-based login for Solana wallets with thirdweb Auth & Next",
    "created_at": "2022-10-07T21:06:39Z",
    "updated_at": "2023-06-08T22:24:09Z",
    "clone_url": "https://github.com/thirdweb-example/thirdweb-auth-solana-next.git",
    "topics": [
      "solana"
    ],
    "language": "TypeScript",
    "stargazers_count": 4,
    "is_template": false,
    "homepage": ""
  },
  {
    "name": "thirdweb-auth-supabase",
    "html_url": "https://github.com/thirdweb-example/thirdweb-auth-supabase",
    "description": "Enable users to login to your backend with their wallet, and store users in supabase. ",
    "created_at": "2022-08-19T19:02:16Z",
    "updated_at": "2023-04-09T00:48:26Z",
    "clone_url": "https://github.com/thirdweb-example/thirdweb-auth-supabase.git",
    "topics": [
      "auth",
      "supabase",
      "web2"
    ],
    "language": "TypeScript",
    "stargazers_count": 11,
    "is_template": false,
    "homepage": ""
  },
  {
    "name": "thirdweb-bundlr",
    "html_url": "https://github.com/thirdweb-example/thirdweb-bundlr",
    "description": "Decentralized NFT metadata storage using Bundlr",
    "created_at": "2022-12-16T19:27:19Z",
    "updated_at": "2023-03-05T13:26:22Z",
    "clone_url": "https://github.com/thirdweb-example/thirdweb-bundlr.git",
    "topics": [],
    "language": "TypeScript",
    "stargazers_count": 5,
    "is_template": false,
    "homepage": null
  },
  {
    "name": "thirdweb-chainlink-functions",
    "html_url": "https://github.com/thirdweb-example/thirdweb-chainlink-functions",
    "description": "Off-chain Data & Computation with Chainlink Functions",
    "created_at": "2023-03-01T22:40:33Z",
    "updated_at": "2023-05-05T00:13:06Z",
    "clone_url": "https://github.com/thirdweb-example/thirdweb-chainlink-functions.git",
    "topics": [
      "chainlink",
      "chainlink-functions",
      "dashboard",
      "deploy",
      "template"
    ],
    "language": "Solidity",
    "stargazers_count": 1,
    "is_template": true,
    "homepage": ""
  },
  {
    "name": "thirdweb-chainlink-template",
    "html_url": "https://github.com/thirdweb-example/thirdweb-chainlink-template",
    "description": null,
    "created_at": "2023-01-23T09:05:13Z",
    "updated_at": "2023-05-09T03:06:44Z",
    "clone_url": "https://github.com/thirdweb-example/thirdweb-chainlink-template.git",
    "topics": [],
    "language": "Solidity",
    "stargazers_count": 2,
    "is_template": true,
    "homepage": null
  },
  {
    "name": "thirdweb-livepeer",
    "html_url": "https://github.com/thirdweb-example/thirdweb-livepeer",
    "description": null,
    "created_at": "2023-04-18T16:05:42Z",
    "updated_at": "2023-04-18T16:05:42Z",
    "clone_url": "https://github.com/thirdweb-example/thirdweb-livepeer.git",
    "topics": [],
    "language": null,
    "stargazers_count": 0,
    "is_template": false,
    "homepage": null
  },
  {
    "name": "thirdweb-stripe",
    "html_url": "https://github.com/thirdweb-example/thirdweb-stripe",
    "description": "Subscription based payments for web3 apps using thirdweb authentication and stripe",
    "created_at": "2022-06-19T02:19:09Z",
    "updated_at": "2023-04-30T18:58:10Z",
    "clone_url": "https://github.com/thirdweb-example/thirdweb-stripe.git",
    "topics": [
      "auth",
      "stripe"
    ],
    "language": "TypeScript",
    "stargazers_count": 38,
    "is_template": false,
    "homepage": ""
  },
  {
    "name": "tiered-loyalty-contract",
    "html_url": "https://github.com/thirdweb-example/tiered-loyalty-contract",
    "description": null,
    "created_at": "2023-06-21T22:06:44Z",
    "updated_at": "2023-06-23T10:45:15Z",
    "clone_url": "https://github.com/thirdweb-example/tiered-loyalty-contract.git",
    "topics": [],
    "language": "Solidity",
    "stargazers_count": 1,
    "is_template": false,
    "homepage": null
  },
  {
    "name": "todo-list",
    "html_url": "https://github.com/thirdweb-example/todo-list",
    "description": "Build a simple todo list by building and interacting with a smart contract!",
    "created_at": "2022-09-12T01:57:30Z",
    "updated_at": "2022-09-29T01:19:40Z",
    "clone_url": "https://github.com/thirdweb-example/todo-list.git",
    "topics": [
      "contract-kit",
      "extensions"
    ],
    "language": "TypeScript",
    "stargazers_count": 1,
    "is_template": false,
    "homepage": "https://todo-list.thirdweb-example.com/"
  },
  {
    "name": "token-bound-account-app",
    "html_url": "https://github.com/thirdweb-example/token-bound-account-app",
    "description": "Create a frontend for users to create erc-6551 smart wallets for their NFTs & claim erc-20 tokens!",
    "created_at": "2023-05-18T23:02:18Z",
    "updated_at": "2023-06-18T06:35:13Z",
    "clone_url": "https://github.com/thirdweb-example/token-bound-account-app.git",
    "topics": [],
    "language": "CSS",
    "stargazers_count": 8,
    "is_template": true,
    "homepage": "https://token-bound-account-app.thirdweb-preview.com/"
  },
  {
    "name": "token-drop",
    "html_url": "https://github.com/thirdweb-example/token-drop",
    "description": "Release your token with claim conditions for a price using thirdweb's Token Drop contract",
    "created_at": "2022-05-25T04:05:25Z",
    "updated_at": "2023-06-17T18:16:39Z",
    "clone_url": "https://github.com/thirdweb-example/token-drop.git",
    "topics": [
      "token-drop"
    ],
    "language": "TypeScript",
    "stargazers_count": 17,
    "is_template": false,
    "homepage": "https://token-drop.thirdweb-example.com"
  },
  {
    "name": "token-gated-account",
    "html_url": "https://github.com/thirdweb-example/token-gated-account",
    "description": "Create token bound smart wallets for your users using the thirdweb Solidity SDK!",
    "created_at": "2023-05-10T18:20:21Z",
    "updated_at": "2023-06-12T06:57:51Z",
    "clone_url": "https://github.com/thirdweb-example/token-gated-account.git",
    "topics": [
      "account-abstraction",
      "erc4337",
      "erc6551",
      "solidity",
      "solidity-contracts",
      "token-bound-account"
    ],
    "language": "Solidity",
    "stargazers_count": 3,
    "is_template": true,
    "homepage": ""
  },
  {
    "name": "unity-guides",
    "html_url": "https://github.com/thirdweb-example/unity-guides",
    "description": null,
    "created_at": "2022-11-16T02:26:10Z",
    "updated_at": "2022-11-17T03:21:05Z",
    "clone_url": "https://github.com/thirdweb-example/unity-guides.git",
    "topics": [],
    "language": null,
    "stargazers_count": 0,
    "is_template": false,
    "homepage": null
  },
  {
    "name": "unity-karting-game",
    "html_url": "https://github.com/thirdweb-example/unity-karting-game",
    "description": "Purchase Vehicle NFTs from an in-game marketplace and start earning ERC20 tokens used to buy upgrades!",
    "created_at": "2022-11-28T07:07:24Z",
    "updated_at": "2023-04-29T03:51:49Z",
    "clone_url": "https://github.com/thirdweb-example/unity-karting-game.git",
    "topics": [
      "gaming"
    ],
    "language": "C#",
    "stargazers_count": 5,
    "is_template": false,
    "homepage": "https://unity-karting-game.thirdweb-example.com"
  },
  {
    "name": "unity-nft-lootboxes",
    "html_url": "https://github.com/thirdweb-example/unity-nft-lootboxes",
    "description": "Purchase NFT loot boxes from a marketplace and open them to reveal randomly selected NFTs inside!",
    "created_at": "2022-11-30T04:22:51Z",
    "updated_at": "2023-06-12T06:32:22Z",
    "clone_url": "https://github.com/thirdweb-example/unity-nft-lootboxes.git",
    "topics": [
      "gaming"
    ],
    "language": "JavaScript",
    "stargazers_count": 7,
    "is_template": false,
    "homepage": "https://unity-nft-lootboxes.thirdweb-example.com"
  },
  {
    "name": "unity-rpg-game",
    "html_url": "https://github.com/thirdweb-example/unity-rpg-game",
    "description": "Speak with NPCs and complete quests to earn ERC20 tokens which you can use to buy NFTs from the in-game shop!",
    "created_at": "2022-11-28T07:08:09Z",
    "updated_at": "2023-06-23T13:11:17Z",
    "clone_url": "https://github.com/thirdweb-example/unity-rpg-game.git",
    "topics": [],
    "language": "C#",
    "stargazers_count": 12,
    "is_template": false,
    "homepage": "https://unity-rpg-game.thirdweb-example.com"
  },
  {
    "name": "unity-vr",
    "html_url": "https://github.com/thirdweb-example/unity-vr",
    "description": "Create VR Games in Unity using GamingKit",
    "created_at": "2022-12-07T06:21:33Z",
    "updated_at": "2022-12-27T12:28:38Z",
    "clone_url": "https://github.com/thirdweb-example/unity-vr.git",
    "topics": [
      "gaming",
      "gamingkit"
    ],
    "language": "C#",
    "stargazers_count": 2,
    "is_template": false,
    "homepage": "https://unity-vr.thirdweb-example.com"
  },
  {
    "name": "unlock-subscribe",
    "html_url": "https://github.com/thirdweb-example/unlock-subscribe",
    "description": "Build a simple on-chain subscription model into your app using the Lock contract by Unlock",
    "created_at": "2022-12-01T17:35:46Z",
    "updated_at": "2023-05-30T14:40:33Z",
    "clone_url": "https://github.com/thirdweb-example/unlock-subscribe.git",
    "topics": [],
    "language": "CSS",
    "stargazers_count": 6,
    "is_template": true,
    "homepage": "https://unlock-subscribe.thirdweb-example.com/"
  },
  {
    "name": "updatable-nft-metadata",
    "html_url": "https://github.com/thirdweb-example/updatable-nft-metadata",
    "description": null,
    "created_at": "2022-11-08T03:48:09Z",
    "updated_at": "2023-06-12T10:12:24Z",
    "clone_url": "https://github.com/thirdweb-example/updatable-nft-metadata.git",
    "topics": [],
    "language": "JavaScript",
    "stargazers_count": 4,
    "is_template": false,
    "homepage": null
  },
  {
    "name": "vite-javascript-starter",
    "html_url": "https://github.com/thirdweb-example/vite-javascript-starter",
    "description": "thirdweb starter project with Vite & JavaScript",
    "created_at": "2022-03-18T17:33:24Z",
    "updated_at": "2022-11-23T02:40:06Z",
    "clone_url": "https://github.com/thirdweb-example/vite-javascript-starter.git",
    "topics": [
      "javascript",
      "react",
      "reactjs",
      "starter-kit",
      "vite"
    ],
    "language": "JavaScript",
    "stargazers_count": 3,
    "is_template": true,
    "homepage": "https://vite-javascript-starter.thirdweb-example.com"
  },
  {
    "name": "vite-typescript-starter",
    "html_url": "https://github.com/thirdweb-example/vite-typescript-starter",
    "description": "thirdweb starter project with Vite & TypeScript",
    "created_at": "2022-03-18T00:47:03Z",
    "updated_at": "2023-04-29T03:16:47Z",
    "clone_url": "https://github.com/thirdweb-example/vite-typescript-starter.git",
    "topics": [
      "react",
      "reactjs",
      "starter-kit",
      "typescript",
      "vite"
    ],
    "language": "CSS",
    "stargazers_count": 4,
    "is_template": true,
    "homepage": "https://vite-typescript-starter.thirdweb-example.com"
  },
  {
    "name": "web3button",
    "html_url": "https://github.com/thirdweb-example/web3button",
    "description": "Learn how to use the Web3Button component from the thirdweb React SDK!",
    "created_at": "2022-08-20T00:27:11Z",
    "updated_at": "2023-04-13T20:25:23Z",
    "clone_url": "https://github.com/thirdweb-example/web3button.git",
    "topics": [
      "ui-components"
    ],
    "language": "JavaScript",
    "stargazers_count": 16,
    "is_template": false,
    "homepage": "https://web3button.thirdweb-example.com/"
  },
  {
    "name": "web3flight",
    "html_url": "https://github.com/thirdweb-example/web3flight",
    "description": "Smart Wallet demo",
    "created_at": "2023-04-24T21:26:56Z",
    "updated_at": "2023-06-01T04:56:45Z",
    "clone_url": "https://github.com/thirdweb-example/web3flight.git",
    "topics": [],
    "language": "TypeScript",
    "stargazers_count": 2,
    "is_template": false,
    "homepage": "https://web3flight.thirdweb-preview.com"
  }
]

---

## File: docs/feature_snippets.json

{
  "ContractMetadata": [
    {
      "name": "get",
      "summary": "Get the metadata of a contract\n\n",
      "remarks": "\n\nGet the metadata of a contract\n\n",
      "examples": {
        "javascript": "const metadata = await contract.metadata.get();"
      },
      "reference": {
        "javascript": "https://docs.thirdweb.com/typescript/sdk.contractmetadata.get"
      }
    },
    {
      "name": "set",
      "summary": "Set the metadata of a contract\n\n",
      "remarks": "\n\nOVERWRITE the metadata of a contract\n\n",
      "examples": {
        "javascript": "await contract.metadata.set({\n name: \"My Contract\",\n description: \"My contract description\"\n})"
      },
      "reference": {
        "javascript": "https://docs.thirdweb.com/typescript/sdk.contractmetadata.set"
      }
    },
    {
      "name": "update",
      "summary": "Update the metadata of a contract\n\n",
      "remarks": "\n\nUpdate the metadata of a contract\n\n",
      "examples": {
        "javascript": "await contract.metadata.update({\n  name: \"My Contract\",\n  description: \"My contract description\"\n})"
      },
      "reference": {
        "javascript": "https://docs.thirdweb.com/typescript/sdk.contractmetadata.update"
      }
    }
  ],
  "PlatformFee": [
    {
      "name": "get",
      "summary": "Get the platform fee recipient and basis points *\n\n",
      "remarks": null,
      "examples": {
        "javascript": "const feeInfo = await contract.platformFee.get();"
      },
      "reference": {
        "javascript": "https://docs.thirdweb.com/typescript/sdk.contractplatformfee.get"
      }
    }
  ],
  "PrimarySale": [
    {
      "name": "getRecipient",
      "summary": "Get the primary sale recipient.\n\n",
      "remarks": null,
      "examples": {
        "javascript": "const salesRecipient = await contract.sales.getRecipient();"
      },
      "reference": {
        "javascript": "https://docs.thirdweb.com/typescript/sdk.contractprimarysale.getrecipient"
      }
    },
    {
      "name": "setRecipient",
      "summary": "Set the primary sale recipient\n\n",
      "remarks": null,
      "examples": {
        "javascript": "await contract.sales.setRecipient(recipientWalletAddress);"
      },
      "reference": {
        "javascript": "https://docs.thirdweb.com/typescript/sdk.contractprimarysale.setrecipient"
      }
    }
  ],
  "Permissions": [
    {
      "name": "get",
      "summary": "Call this to get a list of addresses that are members of a specific role.\n\n",
      "remarks": "\n\nSee {@link ContractRoles.getAll} to get get a list of addresses for all supported roles on the contract.\n\n",
      "examples": {
        "javascript": "const minterAddresses = await contract.roles.get(\"minter\");"
      },
      "reference": {
        "javascript": "https://docs.thirdweb.com/typescript/sdk.contractroles.get"
      }
    },
    {
      "name": "getAll",
      "summary": "Call this to get get a list of addresses for all supported roles on the contract.\n\n",
      "remarks": "\n\nSee {@link ContractRoles.get} to get a list of addresses that are members of a specific role.\n\n",
      "examples": {
        "javascript": "const rolesAndMembers = await contract.roles.getAll();"
      },
      "reference": {
        "javascript": "https://docs.thirdweb.com/typescript/sdk.contractroles.getall"
      }
    },
    {
      "name": "grant",
      "summary": "Call this to grant a role to a specific address.\n\n",
      "remarks": "\n\nMake sure you are sure you want to grant the role to the address.\n\n",
      "examples": {
        "javascript": "await contract.roles.grant(\"minter\", \"0x1234567890123456789012345678901234567890\");"
      },
      "reference": {
        "javascript": "https://docs.thirdweb.com/typescript/sdk.contractroles.grant"
      }
    },
    {
      "name": "revoke",
      "summary": "Call this to revoke a role from a specific address.\n\n",
      "remarks": "\n\n-- Caution --\n\nThis will let you remove yourself from the role, too. If you remove yourself from the admin role, you will no longer be able to administer the contract. There is no way to recover from this.\n\n",
      "examples": {
        "javascript": "await contract.roles.revoke(\"minter\", \"0x1234567890123456789012345678901234567890\");"
      },
      "reference": {
        "javascript": "https://docs.thirdweb.com/typescript/sdk.contractroles.revoke"
      }
    },
    {
      "name": "setAll",
      "summary": "Call this to OVERWRITE the list of addresses that are members of specific roles.\n\nEvery role in the list will be overwritten with the new list of addresses provided with them. If you want to add or remove addresses for a single address use {@link ContractRoles.grant} and {@link ContractRoles.revoke} respectively instead.\n\n",
      "remarks": null,
      "examples": {
        "javascript": "const minterAddresses = await contract.roles.get(\"minter\");\nawait contract.roles.setAll({\n minter: []\n});\nconsole.log(await contract.roles.get(\"minter\")); // No matter what members had the role before, the new list will be set to []"
      },
      "reference": {
        "javascript": "https://docs.thirdweb.com/typescript/sdk.contractroles.setall"
      }
    }
  ],
  "Royalty": [
    {
      "name": "getDefaultRoyaltyInfo",
      "summary": "Gets the royalty recipient and BPS (basis points) of the contract\n\n",
      "remarks": null,
      "examples": {
        "javascript": "const royaltyInfo = await contract.royalties.getDefaultRoyaltyInfo();"
      },
      "reference": {
        "javascript": "https://docs.thirdweb.com/typescript/sdk.contractroyalty.getdefaultroyaltyinfo"
      }
    },
    {
      "name": "getTokenRoyaltyInfo",
      "summary": "Gets the royalty recipient and BPS (basis points) of a particular token\n\n",
      "remarks": null,
      "examples": {
        "javascript": "const royaltyInfo = await contract.royalties.getDefaultRoyaltyInfo();"
      },
      "reference": {
        "javascript": "https://docs.thirdweb.com/typescript/sdk.contractroyalty.gettokenroyaltyinfo"
      }
    },
    {
      "name": "setDefaultRoyaltyInfo",
      "summary": "Set the royalty recipient and fee for a contract\n\n",
      "remarks": null,
      "examples": {
        "javascript": "await contract.roles.setDefaultRoyaltyInfo({\n  seller_fee_basis_points: 100, // 1% royalty fee\n  fee_recipient: \"0x...\", // the fee recipient\n});"
      },
      "reference": {
        "javascript": "https://docs.thirdweb.com/typescript/sdk.contractroyalty.setdefaultroyaltyinfo"
      }
    },
    {
      "name": "setTokenRoyaltyInfo",
      "summary": "Set the royalty recipient and fee for a particular token\n\n",
      "remarks": null,
      "examples": {
        "javascript": "await contract.roles.setTokenRoyaltyInfo(tokenId, {\n  seller_fee_basis_points: 100, // 1% royalty fee\n  fee_recipient: \"0x...\", // the fee recipient\n});"
      },
      "reference": {
        "javascript": "https://docs.thirdweb.com/typescript/sdk.contractroyalty.settokenroyaltyinfo"
      }
    }
  ],
  "ERC1155ClaimableWithConditions": [
    {
      "name": "claimConditions",
      "summary": "Configure claim conditions\n\n",
      "remarks": "\n\nDefine who can claim NFTs in the collection, when and how many.\n\n",
      "examples": {
        "javascript": "const presaleStartTime = new Date();\nconst publicSaleStartTime = new Date(Date.now() + 60 * 60 * 24 * 1000);\nconst claimConditions = [\n  {\n    startTime: presaleStartTime, // start the presale now\n    maxQuantity: 2, // limit how many mints for this presale\n    price: 0.01, // presale price\n    snapshot: ['0x...', '0x...'], // limit minting to only certain addresses\n  },\n  {\n    startTime: publicSaleStartTime, // 24h after presale, start public sale\n    price: 0.08, // public sale price\n  }\n]);\nawait contract.erc1155.claimConditions.set(tokenId, claimConditions);"
      },
      "reference": {
        "javascript": "https://docs.thirdweb.com/typescript/sdk.droperc1155claimconditions"
      }
    }
  ],
  "ERC1155Revealable": [
    {
      "name": "revealer",
      "summary": "Delayed reveal\n\n",
      "remarks": "\n\nCreate a batch of encrypted NFTs that can be revealed at a later time.\n\n",
      "examples": {
        "javascript": "// the real NFTs, these will be encrypted until you reveal them\nconst realNFTs = [{\n  name: \"Common NFT #1\",\n  description: \"Common NFT, one of many.\",\n  image: fs.readFileSync(\"path/to/image.png\"),\n}, {\n  name: \"Super Rare NFT #2\",\n  description: \"You got a Super Rare NFT!\",\n  image: fs.readFileSync(\"path/to/image.png\"),\n}];\n// A placeholder NFT that people will get immediately in their wallet, and will be converted to the real NFT at reveal time\nconst placeholderNFT = {\n  name: \"Hidden NFT\",\n  description: \"Will be revealed next week!\"\n};\n// Create and encrypt the NFTs\nawait contract.erc1155.drop.revealer.createDelayedRevealBatch(\n  placeholderNFT,\n  realNFTs,\n  \"my secret password\",\n);\n// Whenever you're ready, reveal your NFTs at any time\nconst batchId = 0; // the batch to reveal\nawait contract.erc1155.revealer.reveal(batchId, \"my secret password\");"
      },
      "reference": {
        "javascript": "https://docs.thirdweb.com/typescript/sdk.delayedreveal"
      }
    }
  ],
  "ERC1155SignatureMintable": [
    {
      "name": "signature",
      "summary": "Signature Minting\n\n",
      "remarks": "\n\nGenerate dynamic NFTs with your own signature, and let others mint them using that signature.\n\n",
      "examples": {
        "javascript": "// see how to craft a payload to sign in the `contract.signature.generate()` documentation\nconst signedPayload = contract.signature().generate(payload);\n\n// now anyone can mint the NFT\nconst tx = contract.signature.mint(signedPayload);\nconst receipt = tx.receipt; // the mint transaction receipt\nconst mintedId = tx.id; // the id of the NFT minted"
      },
      "reference": {
        "javascript": "https://docs.thirdweb.com/typescript/sdk.erc1155signaturemintable"
      }
    }
  ],
  "ERC1155": [
    {
      "name": "balanceOf",
      "summary": "Get NFT Balance\n\n",
      "remarks": "\n\nGet a wallets NFT balance (number of NFTs in this contract owned by the wallet).\n\n",
      "examples": {
        "javascript": "// Address of the wallet to check NFT balance\nconst walletAddress = \"{{wallet_address}}\";\nconst tokenId = 0; // Id of the NFT to check\nconst balance = await contract.erc1155.balanceOf(walletAddress, tokenId);"
      },
      "reference": {
        "javascript": "https://docs.thirdweb.com/typescript/sdk.erc1155.balanceof"
      }
    },
    {
      "name": "get",
      "summary": "Get a single NFT Metadata\n\n",
      "remarks": null,
      "examples": {
        "javascript": "const nft = await contract.erc1155.get(0);"
      },
      "reference": {
        "javascript": "https://docs.thirdweb.com/typescript/sdk.erc1155.get"
      }
    },
    {
      "name": "transfer",
      "summary": "Transfer a single NFT\n\n",
      "remarks": "\n\nTransfer an NFT from the connected wallet to another wallet.\n\n",
      "examples": {
        "javascript": "// Address of the wallet you want to send the NFT to\nconst toAddress = \"{{wallet_address}}\";\nconst tokenId = \"0\"; // The token ID of the NFT you want to send\nconst amount = 3; // How many copies of the NFTs to transfer\nawait contract.erc1155.transfer(toAddress, tokenId, amount);"
      },
      "reference": {
        "javascript": "https://docs.thirdweb.com/typescript/sdk.erc1155.transfer"
      }
    }
  ],
  "ERC1155Burnable": [
    {
      "name": "burn",
      "summary": "Burn a specified amount of a NFTs\n\n",
      "remarks": "\n\nBurn the specified NFTs from the connected wallet\n\n",
      "examples": {
        "javascript": "// The token ID to burn NFTs of\nconst tokenId = 0;\n// The amount of the NFT you want to burn\nconst amount = 2;\n\nconst result = await contract.erc1155.burn(tokenId, amount);"
      },
      "reference": {
        "javascript": "https://docs.thirdweb.com/typescript/sdk.erc1155.burn"
      }
    },
    {
      "name": "burnBatch",
      "summary": "Burn a batch of NFTs\n\n",
      "remarks": "\n\nBurn the batch NFTs from the connected wallet\n\n",
      "examples": {
        "javascript": "// The token IDs to burn NFTs of\nconst tokenIds = [0, 1];\n// The amounts of each NFT you want to burn\nconst amounts = [2, 2];\n\nconst result = await contract.erc1155.burnBatch(tokenIds, amounts);"
      },
      "reference": {
        "javascript": "https://docs.thirdweb.com/typescript/sdk.erc1155.burnbatch"
      }
    },
    {
      "name": "burnBatchFrom",
      "summary": "Burn a batch of NFTs\n\n",
      "remarks": "\n\nBurn the batch NFTs from the specified wallet\n\n",
      "examples": {
        "javascript": "// The address of the wallet to burn NFTS from\nconst account = \"0x...\";\n// The token IDs to burn NFTs of\nconst tokenIds = [0, 1];\n// The amounts of each NFT you want to burn\nconst amounts = [2, 2];\n\nconst result = await contract.erc1155.burnBatchFrom(account, tokenIds, amounts);"
      },
      "reference": {
        "javascript": "https://docs.thirdweb.com/typescript/sdk.erc1155.burnbatchfrom"
      }
    },
    {
      "name": "burnFrom",
      "summary": "Burn a specified amount of a NFTs\n\n",
      "remarks": "\n\nBurn the specified NFTs from a specified wallet\n\n",
      "examples": {
        "javascript": "// The address of the wallet to burn NFTS from\nconst account = \"0x...\";\n// The token ID to burn NFTs of\nconst tokenId = 0;\n// The amount of this NFT you want to burn\nconst amount = 2;\n\nconst result = await contract.erc1155.burnFrom(account, tokenId, amount);"
      },
      "reference": {
        "javascript": "https://docs.thirdweb.com/typescript/sdk.erc1155.burnfrom"
      }
    }
  ],
  "ERC1155Claimable": [
    {
      "name": "claim",
      "summary": "Claim NFTs\n\n",
      "remarks": "\n\nLet the connected wallet claim NFTs.\n\n",
      "examples": {
        "javascript": "const tokenId = 0; // the id of the NFT you want to claim\nconst quantity = 1; // how many NFTs you want to claim\n\nconst tx = await contract.erc1155.claim(tokenId, quantity);\nconst receipt = tx.receipt; // the transaction receipt"
      },
      "reference": {
        "javascript": "https://docs.thirdweb.com/typescript/sdk.erc1155.claim"
      }
    },
    {
      "name": "claimTo",
      "summary": "Claim NFTs to a specific Wallet\n\n",
      "remarks": "\n\nLet the specified wallet claim NFTs.\n\n",
      "examples": {
        "javascript": "const address = \"{{wallet_address}}\"; // address of the wallet you want to claim the NFTs\nconst tokenId = 0; // the id of the NFT you want to claim\nconst quantity = 1; // how many NFTs you want to claim\n\nconst tx = await contract.erc1155.claimTo(address, tokenId, quantity);\nconst receipt = tx.receipt; // the transaction receipt"
      },
      "reference": {
        "javascript": "https://docs.thirdweb.com/typescript/sdk.erc1155.claimto"
      }
    }
  ],
  "ERC1155Enumerable": [
    {
      "name": "getAll",
      "summary": "Get All NFTs\n\n",
      "remarks": "\n\nGet all the data associated with every NFT in this contract.\n\nBy default, returns the first 100 NFTs, use queryParams to fetch more.\n\n",
      "examples": {
        "javascript": "const nfts = await contract.erc1155.getAll();"
      },
      "reference": {
        "javascript": "https://docs.thirdweb.com/typescript/sdk.erc1155.getall"
      }
    },
    {
      "name": "getOwned",
      "summary": "Get Owned NFTs\n\n",
      "remarks": "\n\nGet all the data associated with the NFTs owned by a specific wallet.\n\n",
      "examples": {
        "javascript": "// Address of the wallet to get the NFTs of\nconst address = \"{{wallet_address}}\";\nconst nfts = await contract.erc1155.getOwned(address);"
      },
      "reference": {
        "javascript": "https://docs.thirdweb.com/typescript/sdk.erc1155.getowned"
      }
    }
  ],
  "ERC1155LazyMintable": [
    {
      "name": "lazyMint",
      "summary": "Create a batch of NFTs to be claimed in the future\n\n",
      "remarks": "\n\nCreate batch allows you to create a batch of many NFTs in one transaction.\n\n",
      "examples": {
        "javascript": "// Custom metadata of the NFTs to create\nconst metadatas = [{\n  name: \"Cool NFT\",\n  description: \"This is a cool NFT\",\n  image: fs.readFileSync(\"path/to/image.png\"), // This can be an image url or file\n}, {\n  name: \"Cool NFT\",\n  description: \"This is a cool NFT\",\n  image: fs.readFileSync(\"path/to/image.png\"),\n}];\n\nconst results = await contract.erc1155.lazyMint(metadatas); // uploads and creates the NFTs on chain\nconst firstTokenId = results[0].id; // token id of the first created NFT\nconst firstNFT = await results[0].data(); // (optional) fetch details of the first created NFT"
      },
      "reference": {
        "javascript": "https://docs.thirdweb.com/typescript/sdk.erc1155.lazymint"
      }
    }
  ],
  "ERC1155Mintable": [
    {
      "name": "mint",
      "summary": "Mint an NFT with a limited supply\n\n",
      "remarks": "\n\nMint an NFT with a limited supply to the connected wallet.\n\n",
      "examples": {
        "javascript": "// Address of the wallet you want to mint the NFT to\nconst toAddress = \"{{wallet_address}}\"\n\n// Custom metadata of the NFT, note that you can fully customize this metadata with other properties.\nconst metadata = {\n  name: \"Cool NFT\",\n  description: \"This is a cool NFT\",\n  image: fs.readFileSync(\"path/to/image.png\"), // This can be an image url or file\n}\n\nconst metadataWithSupply = {\n  metadata,\n  supply: 1000, // The number of this NFT you want to mint\n}\n\nconst tx = await contract.erc1155.mint(toAddress, metadataWithSupply);\nconst receipt = tx.receipt; // the transaction receipt\nconst tokenId = tx.id; // the id of the NFT minted\nconst nft = await tx.data(); // (optional) fetch details of minted NFT"
      },
      "reference": {
        "javascript": "https://docs.thirdweb.com/typescript/sdk.erc1155.mint"
      }
    },
    {
      "name": "mintAdditionalSupply",
      "summary": "Increase the supply of an existing NFT\n\n",
      "remarks": "\n\nIncrease the supply of an existing NFT and mint it to the connected wallet address\n\n",
      "examples": {
        "javascript": "const tokenId = 0;\nconst additionalSupply = 1000;\nawait contract.erc1155.mintAdditionalSupply(tokenId, additionalSupply);"
      },
      "reference": {
        "javascript": "https://docs.thirdweb.com/typescript/sdk.erc1155.mintadditionalsupply"
      }
    },
    {
      "name": "mintTo",
      "summary": "Mint an NFT with a limited supply\n\n",
      "remarks": "\n\nMint an NFT with a limited supply to a specified wallet.\n\n",
      "examples": {
        "javascript": "// Address of the wallet you want to mint the NFT to\nconst toAddress = \"{{wallet_address}}\"\n\n// Custom metadata of the NFT, note that you can fully customize this metadata with other properties.\nconst metadata = {\n  name: \"Cool NFT\",\n  description: \"This is a cool NFT\",\n  image: fs.readFileSync(\"path/to/image.png\"), // This can be an image url or file\n}\n\nconst metadataWithSupply = {\n  metadata,\n  supply: 1000, // The number of this NFT you want to mint\n}\n\nconst tx = await contract.erc1155.mintTo(toAddress, metadataWithSupply);\nconst receipt = tx.receipt; // the transaction receipt\nconst tokenId = tx.id; // the id of the NFT minted\nconst nft = await tx.data(); // (optional) fetch details of minted NFT"
      },
      "reference": {
        "javascript": "https://docs.thirdweb.com/typescript/sdk.erc1155.mintto"
      }
    }
  ],
  "ERC1155BatchMintable": [
    {
      "name": "mintBatch",
      "summary": "Mint Many NFTs with limited supplies\n\n",
      "remarks": "\n\nMint many different NFTs with limited supplies to the connected wallet.\n\n",
      "examples": {
        "javascript": "// Custom metadata and supplies of your NFTs\nconst metadataWithSupply = [{\n  supply: 50, // The number of this NFT you want to mint\n  metadata: {\n    name: \"Cool NFT #1\",\n    description: \"This is a cool NFT\",\n    image: fs.readFileSync(\"path/to/image.png\"), // This can be an image url or file\n  },\n}, {\n  supply: 100,\n  metadata: {\n    name: \"Cool NFT #2\",\n    description: \"This is a cool NFT\",\n    image: fs.readFileSync(\"path/to/image.png\"), // This can be an image url or file\n  },\n}];\n\nconst tx = await contract.erc1155.mintBatch(metadataWithSupply);\nconst receipt = tx[0].receipt; // same transaction receipt for all minted NFTs\nconst firstTokenId = tx[0].id; // token id of the first minted NFT\nconst firstNFT = await tx[0].data(); // (optional) fetch details of the first minted NFT"
      },
      "reference": {
        "javascript": "https://docs.thirdweb.com/typescript/sdk.erc1155.mintbatch"
      }
    },
    {
      "name": "mintBatchTo",
      "summary": "Mint Many NFTs with limited supplies\n\n",
      "remarks": "\n\nMint many different NFTs with limited supplies to a specified wallet.\n\n",
      "examples": {
        "javascript": "// Address of the wallet you want to mint the NFT to\nconst toAddress = \"{{wallet_address}}\"\n\n// Custom metadata and supplies of your NFTs\nconst metadataWithSupply = [{\n  supply: 50, // The number of this NFT you want to mint\n  metadata: {\n    name: \"Cool NFT #1\",\n    description: \"This is a cool NFT\",\n    image: fs.readFileSync(\"path/to/image.png\"), // This can be an image url or file\n  },\n}, {\n  supply: 100,\n  metadata: {\n    name: \"Cool NFT #2\",\n    description: \"This is a cool NFT\",\n    image: fs.readFileSync(\"path/to/image.png\"), // This can be an image url or file\n  },\n}];\n\nconst tx = await contract.erc1155.mintBatchTo(toAddress, metadataWithSupply);\nconst receipt = tx[0].receipt; // same transaction receipt for all minted NFTs\nconst firstTokenId = tx[0].id; // token id of the first minted NFT\nconst firstNFT = await tx[0].data(); // (optional) fetch details of the first minted NFT"
      },
      "reference": {
        "javascript": "https://docs.thirdweb.com/typescript/sdk.erc1155.mintbatchto"
      }
    }
  ],
  "ERC20ClaimableWithConditions": [
    {
      "name": "claimConditions",
      "summary": "Configure claim conditions\n\n",
      "remarks": "\n\nDefine who can claim NFTs in the collection, when and how many.\n\n",
      "examples": {
        "javascript": "const presaleStartTime = new Date();\nconst publicSaleStartTime = new Date(Date.now() + 60 * 60 * 24 * 1000);\nconst claimConditions = [\n  {\n    startTime: presaleStartTime, // start the presale now\n    maxQuantity: 2, // limit how many mints for this presale\n    price: 0.01, // presale price\n    snapshot: ['0x...', '0x...'], // limit minting to only certain addresses\n  },\n  {\n    startTime: publicSaleStartTime, // 24h after presale, start public sale\n    price: 0.08, // public sale price\n  }\n]);\nawait contract.erc20.claimConditions.set(claimConditions);"
      },
      "reference": {
        "javascript": "https://docs.thirdweb.com/typescript/sdk.dropclaimconditions"
      }
    },
    {
      "name": "claim",
      "summary": "Claim a certain amount of tokens to the connected Wallet\n\n",
      "remarks": "\n\nLet the specified wallet claim Tokens.\n\n",
      "examples": {
        "javascript": "const address = \"{{wallet_address}}\"; // address of the wallet you want to claim the NFTs\nconst quantity = 42.69; // how many tokens you want to claim\n\nconst tx = await contract.erc20.claim(address, quantity);\nconst receipt = tx.receipt; // the transaction receipt"
      },
      "reference": {
        "javascript": "https://docs.thirdweb.com/typescript/sdk.erc20.claim"
      }
    },
    {
      "name": "claimTo",
      "summary": "Claim a certain amount of tokens to a specific Wallet\n\n",
      "remarks": "\n\nLet the specified wallet claim Tokens.\n\n",
      "examples": {
        "javascript": "const address = \"{{wallet_address}}\"; // address of the wallet you want to claim the NFTs\nconst quantity = 42.69; // how many tokens you want to claim\n\nconst tx = await contract.erc20.claim(address, quantity);\nconst receipt = tx.receipt; // the transaction receipt"
      },
      "reference": {
        "javascript": "https://docs.thirdweb.com/typescript/sdk.erc20.claimto"
      }
    }
  ],
  "ERC20SignatureMintable": [
    {
      "name": "signature",
      "summary": "Signature Minting\n\n",
      "remarks": "\n\nGenerate dynamic NFTs with your own signature, and let others mint them using that signature.\n\n",
      "examples": {
        "javascript": "// see how to craft a payload to sign in the `contract.signature.generate()` documentation\nconst signedPayload = contract.signature().generate(payload);\n\n// now anyone can mint the NFT\nconst tx = contract.erc20.signature.mint(signedPayload);\nconst receipt = tx.receipt; // the mint transaction receipt\nconst mintedId = tx.id; // the id of the NFT minted"
      },
      "reference": {
        "javascript": "https://docs.thirdweb.com/typescript/sdk.erc20signaturemintable"
      }
    }
  ],
  "ERC20": [
    {
      "name": "allowance",
      "summary": "Get Token Allowance\n\n",
      "remarks": "\n\nGet the allowance of a 'spender' wallet over the connected wallet's funds - the allowance of a different address for a token is the amount of tokens that the `spender` wallet is allowed to spend on behalf of the connected wallet.\n\n",
      "examples": {
        "javascript": "// Address of the wallet to check token allowance\nconst spenderAddress = \"0x...\";\nconst allowance = await contract.erc20.allowance(spenderAddress);"
      },
      "reference": {
        "javascript": "https://docs.thirdweb.com/typescript/sdk.erc20.allowance"
      }
    },
    {
      "name": "allowanceOf",
      "summary": "Get Token Allowance\n\n",
      "remarks": "\n\nGet the allowance of one wallet over another wallet's funds - the allowance of a different address for a token is the amount of tokens that the wallet is allowed to spend on behalf of the specified wallet.\n\n",
      "examples": {
        "javascript": "// Address of the wallet who owns the funds\nconst owner = \"{{wallet_address}}\";\n// Address of the wallet to check token allowance\nconst spender = \"0x...\";\nconst allowance = await contract.erc20.allowanceOf(owner, spender);"
      },
      "reference": {
        "javascript": "https://docs.thirdweb.com/typescript/sdk.erc20.allowanceof"
      }
    },
    {
      "name": "balance",
      "summary": "Get Token Balance for the currently connected wallet\n\n",
      "remarks": "\n\nGet a wallets token balance.\n\n",
      "examples": {
        "javascript": "const balance = await contract.erc20.balance();"
      },
      "reference": {
        "javascript": "https://docs.thirdweb.com/typescript/sdk.erc20.balance"
      }
    },
    {
      "name": "balanceOf",
      "summary": "Get Token Balance\n\n",
      "remarks": "\n\nGet a wallets token balance.\n\n",
      "examples": {
        "javascript": "// Address of the wallet to check token balance\nconst walletAddress = \"{{wallet_address}}\";\nconst balance = await contract.erc20.balanceOf(walletAddress);"
      },
      "reference": {
        "javascript": "https://docs.thirdweb.com/typescript/sdk.erc20.balanceof"
      }
    },
    {
      "name": "get",
      "summary": "Get the token Metadata (name, symbol, etc...)\n\n",
      "remarks": null,
      "examples": {
        "javascript": "const token = await contract.erc20.get();"
      },
      "reference": {
        "javascript": "https://docs.thirdweb.com/typescript/sdk.erc20.get"
      }
    },
    {
      "name": "setAllowance",
      "summary": "Allows the specified `spender` wallet to transfer the given `amount` of tokens to another wallet\n\n",
      "remarks": null,
      "examples": {
        "javascript": "// Address of the wallet to allow transfers from\nconst spenderAddress = \"0x...\";\n// The number of tokens to give as allowance\nconst amount = 100\nawait contract.erc20.setAllowance(spenderAddress, amount);"
      },
      "reference": {
        "javascript": "https://docs.thirdweb.com/typescript/sdk.erc20.setallowance"
      }
    },
    {
      "name": "totalSupply",
      "summary": "The total supply for this Token\n\n",
      "remarks": "\n\nGet how much supply has been minted\n\n",
      "examples": {
        "javascript": "const balance = await contract.erc20.totalSupply();"
      },
      "reference": {
        "javascript": "https://docs.thirdweb.com/typescript/sdk.erc20.totalsupply"
      }
    },
    {
      "name": "transfer",
      "summary": "Transfer Tokens\n\n",
      "remarks": "\n\nTransfer tokens from the connected wallet to another wallet.\n\n",
      "examples": {
        "javascript": "// Address of the wallet you want to send the tokens to\nconst toAddress = \"0x...\";\n// The amount of tokens you want to send\nconst amount = 0.1;\nawait contract.erc20.transfer(toAddress, amount);"
      },
      "reference": {
        "javascript": "https://docs.thirdweb.com/typescript/sdk.erc20.transfer"
      }
    },
    {
      "name": "transferFrom",
      "summary": "Transfer Tokens From Address\n\n",
      "remarks": "\n\nTransfer tokens from one wallet to another\n\n",
      "examples": {
        "javascript": "// Address of the wallet sending the tokens\nconst fromAddress = \"{{wallet_address}}\";\n// Address of the wallet you want to send the tokens to\nconst toAddress = \"0x...\";\n// The number of tokens you want to send\nconst amount = 1.2\n// Note that the connected wallet must have approval to transfer the tokens of the fromAddress\nawait contract.erc20.transferFrom(fromAddress, toAddress, amount);"
      },
      "reference": {
        "javascript": "https://docs.thirdweb.com/typescript/sdk.erc20.transferfrom"
      }
    }
  ],
  "ERC20Burnable": [
    {
      "name": "burn",
      "summary": "Burn Tokens\n\n",
      "remarks": "\n\nBurn tokens held by the connected wallet\n\n",
      "examples": {
        "javascript": "// The amount of this token you want to burn\nconst amount = 1.2;\n\nawait contract.erc20.burn(amount);"
      },
      "reference": {
        "javascript": "https://docs.thirdweb.com/typescript/sdk.erc20.burn"
      }
    },
    {
      "name": "burnFrom",
      "summary": "Burn Tokens\n\n",
      "remarks": "\n\nBurn tokens held by the specified wallet\n\n",
      "examples": {
        "javascript": "// Address of the wallet sending the tokens\nconst holderAddress = \"{{wallet_address}}\";\n\n// The amount of this token you want to burn\nconst amount = 1.2;\n\nawait contract.erc20.burnFrom(holderAddress, amount);"
      },
      "reference": {
        "javascript": "https://docs.thirdweb.com/typescript/sdk.erc20.burnfrom"
      }
    }
  ],
  "ERC20Mintable": [
    {
      "name": "mint",
      "summary": "Mint Tokens\n\n",
      "remarks": "\n\nMint tokens to the connected wallet.\n\n",
      "examples": {
        "javascript": "const amount = \"1.5\"; // The amount of this token you want to mint\nawait contract.erc20.mint(toAddress, amount);"
      },
      "reference": {
        "javascript": "https://docs.thirdweb.com/typescript/sdk.erc20.mint"
      }
    },
    {
      "name": "mintTo",
      "summary": "Mint Tokens\n\n",
      "remarks": "\n\nMint tokens to a specified address.\n\n",
      "examples": {
        "javascript": "const toAddress = \"{{wallet_address}}\"; // Address of the wallet you want to mint the tokens to\nconst amount = \"1.5\"; // The amount of this token you want to mint\nawait contract.erc20.mintTo(toAddress, amount);"
      },
      "reference": {
        "javascript": "https://docs.thirdweb.com/typescript/sdk.erc20.mintto"
      }
    }
  ],
  "ERC20BatchMintable": [
    {
      "name": "mintBatchTo",
      "summary": "Mint Tokens To Many Wallets\n\n",
      "remarks": "\n\nMint tokens to many wallets in one transaction.\n\n",
      "examples": {
        "javascript": "// Data of the tokens you want to mint\nconst data = [\n  {\n    toAddress: \"{{wallet_address}}\", // Address to mint tokens to\n    amount: 0.2, // How many tokens to mint to specified address\n  },\n {\n   toAddress: \"0x...\",\n   amount: 1.4,\n }\n]\n\nawait contract.mintBatchTo(data);"
      },
      "reference": {
        "javascript": "https://docs.thirdweb.com/typescript/sdk.erc20.mintbatchto"
      }
    }
  ],
  "ERC721ClaimableWithConditions": [
    {
      "name": "claimConditions",
      "summary": "Configure claim conditions\n\n",
      "remarks": "\n\nDefine who can claim NFTs in the collection, when and how many.\n\n",
      "examples": {
        "javascript": "const presaleStartTime = new Date();\nconst publicSaleStartTime = new Date(Date.now() + 60 * 60 * 24 * 1000);\nconst claimConditions = [\n  {\n    startTime: presaleStartTime, // start the presale now\n    maxQuantity: 2, // limit how many mints for this presale\n    price: 0.01, // presale price\n    snapshot: ['0x...', '0x...'], // limit minting to only certain addresses\n  },\n  {\n    startTime: publicSaleStartTime, // 24h after presale, start public sale\n    price: 0.08, // public sale price\n  }\n]);\nawait contract.erc721.claimConditions.set(claimConditions);"
      },
      "reference": {
        "javascript": "https://docs.thirdweb.com/typescript/sdk.dropclaimconditions"
      }
    }
  ],
  "ERC721Revealable": [
    {
      "name": "revealer",
      "summary": "Delayed reveal\n\n",
      "remarks": "\n\nCreate a batch of encrypted NFTs that can be revealed at a later time.\n\n",
      "examples": {
        "javascript": "// the real NFTs, these will be encrypted until you reveal them\nconst realNFTs = [{\n  name: \"Common NFT #1\",\n  description: \"Common NFT, one of many.\",\n  image: fs.readFileSync(\"path/to/image.png\"),\n}, {\n  name: \"Super Rare NFT #2\",\n  description: \"You got a Super Rare NFT!\",\n  image: fs.readFileSync(\"path/to/image.png\"),\n}];\n// A placeholder NFT that people will get immediately in their wallet, and will be converted to the real NFT at reveal time\nconst placeholderNFT = {\n  name: \"Hidden NFT\",\n  description: \"Will be revealed next week!\"\n};\n// Create and encrypt the NFTs\nawait contract.erc721.revealer.createDelayedRevealBatch(\n  placeholderNFT,\n  realNFTs,\n  \"my secret password\",\n);\n// Whenever you're ready, reveal your NFTs at any time\nconst batchId = 0; // the batch to reveal\nawait contract.erc721.revealer.reveal(batchId, \"my secret password\");"
      },
      "reference": {
        "javascript": "https://docs.thirdweb.com/typescript/sdk.delayedreveal"
      }
    }
  ],
  "ERC721SignatureMint": [
    {
      "name": "signature",
      "summary": "Signature Minting\n\n",
      "remarks": "\n\nGenerate dynamic NFTs with your own signature, and let others mint them using that signature.\n\n",
      "examples": {
        "javascript": "// see how to craft a payload to sign in the `contract.signature.generate()` documentation\nconst signedPayload = contract.signature().generate(payload);\n\n// now anyone can mint the NFT\nconst tx = contract.signature.mint(signedPayload);\nconst receipt = tx.receipt; // the mint transaction receipt\nconst mintedId = tx.id; // the id of the NFT minted"
      },
      "reference": {
        "javascript": "https://docs.thirdweb.com/typescript/sdk.erc721withquantitysignaturemintable"
      }
    }
  ],
  "ERC721": [
    {
      "name": "balanceOf",
      "summary": "Get NFT Balance\n\n",
      "remarks": "\n\nGet a wallets NFT balance (number of NFTs in this contract owned by the wallet).\n\n",
      "examples": {
        "javascript": "const walletAddress = \"{{wallet_address}}\";\nconst balance = await contract.erc721.balanceOf(walletAddress);\nconsole.log(balance);"
      },
      "reference": {
        "javascript": "https://docs.thirdweb.com/typescript/sdk.erc721.balanceof"
      }
    },
    {
      "name": "get",
      "summary": "Get a single NFT Metadata\n\n",
      "remarks": null,
      "examples": {
        "javascript": "const tokenId = 0;\nconst nft = await contract.erc721.get(tokenId);"
      },
      "reference": {
        "javascript": "https://docs.thirdweb.com/typescript/sdk.erc721.get"
      }
    },
    {
      "name": "transfer",
      "summary": "Transfer a single NFT\n\n",
      "remarks": "\n\nTransfer an NFT from the connected wallet to another wallet.\n\n",
      "examples": {
        "javascript": "const walletAddress = \"{{wallet_address}}\";\nconst tokenId = 0;\nawait contract.erc721.transfer(walletAddress, tokenId);"
      },
      "reference": {
        "javascript": "https://docs.thirdweb.com/typescript/sdk.erc721.transfer"
      }
    }
  ],
  "ERC721Burnable": [
    {
      "name": "burn",
      "summary": "Burn a single NFT\n\n",
      "remarks": null,
      "examples": {
        "javascript": "const result = await contract.erc721.burn(tokenId);"
      },
      "reference": {
        "javascript": "https://docs.thirdweb.com/typescript/sdk.erc721.burn"
      }
    }
  ],
  "ERC721Claimable": [
    {
      "name": "claim",
      "summary": "Claim unique NFTs to the connected wallet\n\n",
      "remarks": "\n\nLet the specified wallet claim NFTs.\n\n",
      "examples": {
        "javascript": "const quantity = 1; // how many unique NFTs you want to claim\n\nconst tx = await contract.erc721.claim(quantity);\nconst receipt = tx.receipt; // the transaction receipt\nconst claimedTokenId = tx.id; // the id of the NFT claimed\nconst claimedNFT = await tx.data(); // (optional) get the claimed NFT metadata"
      },
      "reference": {
        "javascript": "https://docs.thirdweb.com/typescript/sdk.erc721.claim"
      }
    },
    {
      "name": "claimTo",
      "summary": "Claim unique NFTs to a specific Wallet\n\n",
      "remarks": "\n\nLet the specified wallet claim NFTs.\n\n",
      "examples": {
        "javascript": "const address = \"{{wallet_address}}\"; // address of the wallet you want to claim the NFTs\nconst quantity = 1; // how many unique NFTs you want to claim\n\nconst tx = await contract.erc721.claimTo(address, quantity);\nconst receipt = tx.receipt; // the transaction receipt\nconst claimedTokenId = tx.id; // the id of the NFT claimed\nconst claimedNFT = await tx.data(); // (optional) get the claimed NFT metadata"
      },
      "reference": {
        "javascript": "https://docs.thirdweb.com/typescript/sdk.erc721.claimto"
      }
    }
  ],
  "ERC721Supply": [
    {
      "name": "getAll",
      "summary": "Get All Minted NFTs\n\n",
      "remarks": "\n\nGet all the data associated with every NFT in this contract.\n\nBy default, returns the first 100 NFTs, use queryParams to fetch more.\n\n",
      "examples": {
        "javascript": "const nfts = await contract.erc721.getAll();\nconsole.log(nfts);"
      },
      "reference": {
        "javascript": "https://docs.thirdweb.com/typescript/sdk.erc721.getall"
      }
    }
  ],
  "ERC721Enumerable": [
    {
      "name": "getOwned",
      "summary": "Get Owned NFTs\n\n",
      "remarks": "\n\nGet all the data associated with the NFTs owned by a specific wallet.\n\n",
      "examples": {
        "javascript": "// Address of the wallet to get the NFTs of\nconst address = \"{{wallet_address}}\";\nconst nfts = await contract.erc721.getOwned(address);\nconsole.log(nfts);"
      },
      "reference": {
        "javascript": "https://docs.thirdweb.com/typescript/sdk.erc721.getowned"
      }
    }
  ],
  "ERC721LazyMintable": [
    {
      "name": "lazyMint",
      "summary": "Create a batch of unique NFTs to be claimed in the future\n\n",
      "remarks": "\n\nCreate batch allows you to create a batch of many unique NFTs in one transaction.\n\n",
      "examples": {
        "javascript": "// Custom metadata of the NFTs to create\nconst metadatas = [{\n  name: \"Cool NFT\",\n  description: \"This is a cool NFT\",\n  image: fs.readFileSync(\"path/to/image.png\"), // This can be an image url or file\n}, {\n  name: \"Cool NFT\",\n  description: \"This is a cool NFT\",\n  image: fs.readFileSync(\"path/to/image.png\"),\n}];\n\nconst results = await contract.erc721.lazyMint(metadatas); // uploads and creates the NFTs on chain\nconst firstTokenId = results[0].id; // token id of the first created NFT\nconst firstNFT = await results[0].data(); // (optional) fetch details of the first created NFT"
      },
      "reference": {
        "javascript": "https://docs.thirdweb.com/typescript/sdk.erc721.lazymint"
      }
    }
  ],
  "ERC721Mintable": [
    {
      "name": "mint",
      "summary": "Mint a unique NFT\n\n",
      "remarks": "\n\nMint a unique NFT to the connected wallet.\n\n",
      "examples": {
        "javascript": "// Custom metadata of the NFT, note that you can fully customize this metadata with other properties.\nconst metadata = {\n  name: \"Cool NFT\",\n  description: \"This is a cool NFT\",\n  image: fs.readFileSync(\"path/to/image.png\"), // This can be an image url or file\n};\n\nconst tx = await contract.erc721.mint(metadata);\nconst receipt = tx.receipt; // the transaction receipt\nconst tokenId = tx.id; // the id of the NFT minted\nconst nft = await tx.data(); // (optional) fetch details of minted NFT"
      },
      "reference": {
        "javascript": "https://docs.thirdweb.com/typescript/sdk.erc721.mint"
      }
    },
    {
      "name": "mintTo",
      "summary": "Mint a unique NFT\n\n",
      "remarks": "\n\nMint a unique NFT to a specified wallet.\n\n",
      "examples": {
        "javascript": "// Address of the wallet you want to mint the NFT to\nconst walletAddress = \"{{wallet_address}}\";\n\n// Custom metadata of the NFT, note that you can fully customize this metadata with other properties.\nconst metadata = {\n  name: \"Cool NFT\",\n  description: \"This is a cool NFT\",\n  image: fs.readFileSync(\"path/to/image.png\"), // This can be an image url or file\n};\n\nconst tx = await contract.erc721.mintTo(walletAddress, metadata);\nconst receipt = tx.receipt; // the transaction receipt\nconst tokenId = tx.id; // the id of the NFT minted\nconst nft = await tx.data(); // (optional) fetch details of minted NFT"
      },
      "reference": {
        "javascript": "https://docs.thirdweb.com/typescript/sdk.erc721.mintto"
      }
    }
  ],
  "ERC721BatchMintable": [
    {
      "name": "mintBatchTo",
      "summary": "Mint Many unique NFTs\n\n",
      "remarks": "\n\nMint many unique NFTs at once to a specified wallet.\n\n",
      "examples": {
        "javascript": "// Address of the wallet you want to mint the NFT to\nconst walletAddress = \"{{wallet_address}}\";\n\n// Custom metadata of the NFTs you want to mint.\nconst metadatas = [{\n  name: \"Cool NFT #1\",\n  description: \"This is a cool NFT\",\n  image: fs.readFileSync(\"path/to/image.png\"), // This can be an image url or file\n}, {\n  name: \"Cool NFT #2\",\n  description: \"This is a cool NFT\",\n  image: fs.readFileSync(\"path/to/other/image.png\"),\n}];\n\nconst tx = await contract.erc721.mintBatchTo(walletAddress, metadatas);\nconst receipt = tx[0].receipt; // same transaction receipt for all minted NFTs\nconst firstTokenId = tx[0].id; // token id of the first minted NFT\nconst firstNFT = await tx[0].data(); // (optional) fetch details of the first minted NFT"
      },
      "reference": {
        "javascript": "https://docs.thirdweb.com/typescript/sdk.erc721.mintbatchto"
      }
    }
  ]
}

---

## File: docs/feature_snippets_go.json

{
  "ERC1155": [
    {
      "name": "Balance",
      "summary": "Get NFT balance",
      "examples": {
        "go": ""
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/edition#func-edition-balance"
      }
    },
    {
      "name": "BalanceOf",
      "summary": "Get NFT balance of a specific wallet",
      "examples": {
        "go": "address := \"{{wallet_address}}\"\ntokenId := 0\nbalance, err := contract.BalanceOf(context.Background(), address, tokenId)\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/edition#func-edition-balanceof"
      }
    },
    {
      "name": "Get",
      "summary": "Get an NFT",
      "examples": {
        "go": "nft, err := contract.Get(context.Background(), 0)\nsupply := nft.Supply\nname := nft.Metadata.Name\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/edition#func-edition-get"
      }
    },
    {
      "name": "GetAll",
      "summary": "Get all NFTs",
      "examples": {
        "go": "nfts, err := contract.GetAll(context.Background())\nsupplyOne := nfts[0].Supply\nnameOne := nfts[0].Metadata.Name\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/edition#func-edition-getall"
      }
    },
    {
      "name": "IsApproved",
      "summary": "Check NFT approval",
      "examples": {
        "go": "owner := \"{{wallet_address}}\"\noperator := \"0x...\"\n\nisApproved, err := contract.IsApproved(context.Background, owner, operator)\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/edition#func-edition-isapproved"
      }
    },
    {
      "name": "SetApprovalForAll",
      "summary": "Set approval for all NFTs",
      "examples": {
        "go": "operator := \"{{wallet_address}}\"\napproved := true\n\ntx, err := contract.SetApprovalForAll(context.Background(), operator, approved)\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/edition#func-edition-setapprovalforall"
      }
    },
    {
      "name": "TotalSupply",
      "summary": "Get the total supply of an NFT",
      "examples": {
        "go": "tokenId := 0\n\ntotalSupply, err := contract.TotalSupply(context.Background, tokenId)\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/edition#func-edition-totalsupply"
      }
    },
    {
      "name": "Transfer",
      "summary": "Transfer NFTs",
      "examples": {
        "go": "to := \"0x...\"\ntokenId := 0\namount := 1\n\ntx, err := contract.Transfer(context.Background(), to, tokenId, amount)\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/edition#func-edition-transfer"
      }
    },
    {
      "name": "Balance",
      "summary": "Get NFT balance",
      "examples": {
        "go": ""
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/erc1155#func-erc1155-balance"
      }
    },
    {
      "name": "BalanceOf",
      "summary": "Get NFT balance of a specific wallet",
      "examples": {
        "go": "address := \"{{wallet_address}}\"\ntokenId := 0\nbalance, err := contract.BalanceOf(context.Background(), address, tokenId)\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/erc1155#func-erc1155-balanceof"
      }
    },
    {
      "name": "Get",
      "summary": "Get an NFT",
      "examples": {
        "go": "nft, err := contract.Get(context.Background(), 0)\nsupply := nft.Supply\nname := nft.Metadata.Name\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/erc1155#func-erc1155-get"
      }
    },
    {
      "name": "GetAll",
      "summary": "Get all NFTs",
      "examples": {
        "go": "nfts, err := contract.GetAll(context.Background())\nsupplyOne := nfts[0].Supply\nnameOne := nfts[0].Metadata.Name\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/erc1155#func-erc1155-getall"
      }
    },
    {
      "name": "IsApproved",
      "summary": "Check NFT approval",
      "examples": {
        "go": "owner := \"{{wallet_address}}\"\noperator := \"0x...\"\n\nisApproved, err := contract.IsApproved(context.Background, owner, operator)\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/erc1155#func-erc1155-isapproved"
      }
    },
    {
      "name": "SetApprovalForAll",
      "summary": "Set approval for all NFTs",
      "examples": {
        "go": "operator := \"{{wallet_address}}\"\napproved := true\n\ntx, err := contract.SetApprovalForAll(context.Background(), operator, approved)\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/erc1155#func-erc1155-setapprovalforall"
      }
    },
    {
      "name": "TotalSupply",
      "summary": "Get the total supply of an NFT",
      "examples": {
        "go": "tokenId := 0\n\ntotalSupply, err := contract.TotalSupply(context.Background, tokenId)\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/erc1155#func-erc1155-totalsupply"
      }
    },
    {
      "name": "Transfer",
      "summary": "Transfer NFTs",
      "examples": {
        "go": "to := \"0x...\"\ntokenId := 0\namount := 1\n\ntx, err := contract.Transfer(context.Background(), to, tokenId, amount)\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/erc1155#func-erc1155-transfer"
      }
    }
  ],
  "ERC1155Burnable": [
    {
      "name": "Burn",
      "summary": "Burn NFTs",
      "examples": {
        "go": "tokenId := 0\namount := 1\ntx, err := contract.Burn(context.Background(), tokenId, amount)\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/edition#func-edition-burn"
      }
    },
    {
      "name": "Burn",
      "summary": "Burn NFTs",
      "examples": {
        "go": "tokenId := 0\namount := 1\ntx, err := contract.Burn(context.Background(), tokenId, amount)\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/erc1155#func-erc1155-burn"
      }
    }
  ],
  "ERC1155ClaimCustom": [
    {
      "name": "Claim",
      "summary": "Claim an NFT",
      "examples": {
        "go": ""
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/edition#func-edition-claim"
      }
    },
    {
      "name": "ClaimTo",
      "summary": "Claim an NFT to a specific wallet",
      "examples": {
        "go": "address = \"{{wallet_address}}\"\ntokenId = 0\nquantity = 1\n\ntx, err := contract.ClaimTo(context.Background(), address, tokenId, quantity)\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/edition#func-edition-claimto"
      }
    },
    {
      "name": "Claim",
      "summary": "Claim an NFT",
      "examples": {
        "go": ""
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/erc1155#func-erc1155-claim"
      }
    },
    {
      "name": "ClaimTo",
      "summary": "Claim an NFT to a specific wallet",
      "examples": {
        "go": "address = \"{{wallet_address}}\"\ntokenId = 0\nquantity = 1\n\ntx, err := contract.ClaimTo(context.Background(), address, tokenId, quantity)\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/erc1155#func-erc1155-claimto"
      }
    }
  ],
  "ERC1155ClaimPhasesV2": [
    {
      "name": "Claim",
      "summary": "Claim an NFT",
      "examples": {
        "go": ""
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/edition#func-edition-claim"
      }
    },
    {
      "name": "ClaimTo",
      "summary": "Claim an NFT to a specific wallet",
      "examples": {
        "go": "address = \"{{wallet_address}}\"\ntokenId = 0\nquantity = 1\n\ntx, err := contract.ClaimTo(context.Background(), address, tokenId, quantity)\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/edition#func-edition-claimto"
      }
    },
    {
      "name": "Claim",
      "summary": "Claim an NFT",
      "examples": {
        "go": ""
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/erc1155#func-erc1155-claim"
      }
    },
    {
      "name": "ClaimTo",
      "summary": "Claim an NFT to a specific wallet",
      "examples": {
        "go": "address = \"{{wallet_address}}\"\ntokenId = 0\nquantity = 1\n\ntx, err := contract.ClaimTo(context.Background(), address, tokenId, quantity)\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/erc1155#func-erc1155-claimto"
      }
    }
  ],
  "ERC1155ClaimConditionsV2": [
    {
      "name": "Claim",
      "summary": "Claim an NFT",
      "examples": {
        "go": ""
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/edition#func-edition-claim"
      }
    },
    {
      "name": "ClaimTo",
      "summary": "Claim an NFT to a specific wallet",
      "examples": {
        "go": "address = \"{{wallet_address}}\"\ntokenId = 0\nquantity = 1\n\ntx, err := contract.ClaimTo(context.Background(), address, tokenId, quantity)\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/edition#func-edition-claimto"
      }
    },
    {
      "name": "Claim",
      "summary": "Claim an NFT",
      "examples": {
        "go": ""
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/erc1155#func-erc1155-claim"
      }
    },
    {
      "name": "ClaimTo",
      "summary": "Claim an NFT to a specific wallet",
      "examples": {
        "go": "address = \"{{wallet_address}}\"\ntokenId = 0\nquantity = 1\n\ntx, err := contract.ClaimTo(context.Background(), address, tokenId, quantity)\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/erc1155#func-erc1155-claimto"
      }
    }
  ],
  "ERC1155LazyMintableV2": [
    {
      "name": "CreateBatch",
      "summary": "Lazy mint NFTs",
      "examples": {
        "go": "image0, err := os.Open(\"path/to/image/0.jpg\")\ndefer image0.Close()\n\nimage1, err := os.Open(\"path/to/image/1.jpg\")\ndefer image1.Close()\n\nmetadatasWithSupply := []*thirdweb.EditionMetadataInput{\n\t&thirdweb.EditionMetadataInput{\n\t\tMetadata: &thirdweb.NFTMetadataInput{\n\t\t\tName: \"Cool NFT\",\n\t\t\tDescription: \"This is a cool NFT\",\n\t\t\tImage: image0,\n\t\t},\n\t\tSupply: 100,\n\t},\n\t&thirdweb.EditionMetadataInput{\n\t\tMetadata: &thirdweb.NFTMetadataInput{\n\t\t\tName: \"Cool NFT\",\n\t\t\tDescription: \"This is a cool NFT\",\n\t\t\tImage: image1,\n\t\t},\n\t\tSupply: 100,\n\t},\n}\n\ntx, err := contract.CreateBatch(context.Background(), metadatasWithSupply)\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/edition#func-edition-createbatch"
      }
    },
    {
      "name": "CreateBatch",
      "summary": "Lazy mint NFTs",
      "examples": {
        "go": "image0, err := os.Open(\"path/to/image/0.jpg\")\ndefer image0.Close()\n\nimage1, err := os.Open(\"path/to/image/1.jpg\")\ndefer image1.Close()\n\nmetadatasWithSupply := []*thirdweb.EditionMetadataInput{\n\t&thirdweb.EditionMetadataInput{\n\t\tMetadata: &thirdweb.NFTMetadataInput{\n\t\t\tName: \"Cool NFT\",\n\t\t\tDescription: \"This is a cool NFT\",\n\t\t\tImage: image0,\n\t\t},\n\t\tSupply: 100,\n\t},\n\t&thirdweb.EditionMetadataInput{\n\t\tMetadata: &thirdweb.NFTMetadataInput{\n\t\t\tName: \"Cool NFT\",\n\t\t\tDescription: \"This is a cool NFT\",\n\t\t\tImage: image1,\n\t\t},\n\t\tSupply: 100,\n\t},\n}\n\ntx, err := contract.CreateBatch(context.Background(), metadatasWithSupply)\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/erc1155#func-erc1155-createbatch"
      }
    }
  ],
  "ERC1155Enumerable": [
    {
      "name": "GetOwned",
      "summary": "Get owned NFTs",
      "examples": {
        "go": "owner := \"{{wallet_address}}\"\nnfts, err := contract.GetOwned(context.Background(), owner)\nname := nfts[0].Metadata.Name\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/edition#func-edition-getowned"
      }
    },
    {
      "name": "GetTotalCount",
      "summary": "Get the total number of NFTs",
      "examples": {
        "go": "totalCount, err := contract.GetTotalCount(context.Background())\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/edition#func-edition-gettotalcount"
      }
    },
    {
      "name": "GetOwned",
      "summary": "Get owned NFTs",
      "examples": {
        "go": "owner := \"{{wallet_address}}\"\nnfts, err := contract.GetOwned(context.Background(), owner)\nname := nfts[0].Metadata.Name\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/erc1155#func-erc1155-getowned"
      }
    },
    {
      "name": "GetTotalCount",
      "summary": "Get the total number of NFTs",
      "examples": {
        "go": "totalCount, err := contract.GetTotalCount(context.Background())\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/erc1155#func-erc1155-gettotalcount"
      }
    }
  ],
  "ERC1155Mintable": [
    {
      "name": "Mint",
      "summary": "Mint an NFT",
      "examples": {
        "go": "image, err := os.Open(\"path/to/image.jpg\")\ndefer image.Close()\n\nmetadataWithSupply := &thirdweb.EditionMetadataInput{\n\tMetadata: &thirdweb.NFTMetadataInput{\n\t\tName: \"Cool NFT\",\n\t\tDescription: \"This is a cool NFT\",\n\t\tImage: image,\n\t},\n\tSupply: 100,\n}\n\ntx, err := contract.Mint(context.Background(), metadataWithSupply)\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/edition#func-edition-mint"
      }
    },
    {
      "name": "MintAdditionalSupply",
      "summary": "Mint additionally supply of an NFT",
      "examples": {
        "go": "tokenId := 0\nadditionalSupply := 100\n\ntx, err := contract.MintAdditionalSupply(context.Background(), tokenId, additionalSupply)\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/edition#func-edition-mintadditionalsupply"
      }
    },
    {
      "name": "MintAdditionalSupplyTo",
      "summary": "Mint additional supply of an NFT to a specific wallet",
      "examples": {
        "go": "to := \"{{wallet_address}}\"\ntokenId := 0\nadditionalSupply := 100\n\ntx, err := contract.MintAdditionalSupplyTo(context.Background(), to, tokenId, additionalSupply)\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/edition#func-edition-mintadditionalsupplyto"
      }
    },
    {
      "name": "MintTo",
      "summary": "Mint an NFT to a specific wallet",
      "examples": {
        "go": "image, err := os.Open(\"path/to/image.jpg\")\ndefer image.Close()\n\nmetadataWithSupply := &thirdweb.EditionMetadataInput{\n\tMetadata: &thirdweb.NFTMetadataInput{\n\t\tName: \"Cool NFT\",\n\t\tDescription: \"This is a cool NFT\",\n\t\tImage: image,\n\t},\n\tSupply: 100,\n}\n\ntx, err := contract.MintTo(context.Background(), \"{{wallet_address}}\", metadataWithSupply)\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/edition#func-edition-mintto"
      }
    },
    {
      "name": "Mint",
      "summary": "Mint an NFT",
      "examples": {
        "go": "image, err := os.Open(\"path/to/image.jpg\")\ndefer image.Close()\n\nmetadataWithSupply := &thirdweb.EditionMetadataInput{\n\tMetadata: &thirdweb.NFTMetadataInput{\n\t\tName: \"Cool NFT\",\n\t\tDescription: \"This is a cool NFT\",\n\t\tImage: image,\n\t},\n\tSupply: 100,\n}\n\ntx, err := contract.Mint(context.Background(), metadataWithSupply)\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/erc1155#func-erc1155-mint"
      }
    },
    {
      "name": "MintAdditionalSupply",
      "summary": "Mint additionally supply of an NFT",
      "examples": {
        "go": "tokenId := 0\nadditionalSupply := 100\n\ntx, err := contract.MintAdditionalSupply(context.Background(), tokenId, additionalSupply)\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/erc1155#func-erc1155-mintadditionalsupply"
      }
    },
    {
      "name": "MintAdditionalSupplyTo",
      "summary": "Mint additional supply of an NFT to a specific wallet",
      "examples": {
        "go": "to := \"{{wallet_address}}\"\ntokenId := 0\nadditionalSupply := 100\n\ntx, err := contract.MintAdditionalSupplyTo(context.Background(), to, tokenId, additionalSupply)\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/erc1155#func-erc1155-mintadditionalsupplyto"
      }
    },
    {
      "name": "MintTo",
      "summary": "Mint an NFT to a specific wallet",
      "examples": {
        "go": "image, err := os.Open(\"path/to/image.jpg\")\ndefer image.Close()\n\nmetadataWithSupply := &thirdweb.EditionMetadataInput{\n\tMetadata: &thirdweb.NFTMetadataInput{\n\t\tName: \"Cool NFT\",\n\t\tDescription: \"This is a cool NFT\",\n\t\tImage: image,\n\t},\n\tSupply: 100,\n}\n\ntx, err := contract.MintTo(context.Background(), \"{{wallet_address}}\", metadataWithSupply)\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/erc1155#func-erc1155-mintto"
      }
    }
  ],
  "ERC1155BatchMintable": [
    {
      "name": "MintBatch",
      "summary": "Mint many NFTs",
      "examples": {
        "go": "metadatasWithSupply := []*thirdweb.EditionMetadataInput{\n\t&thirdweb.EditionMetadataInput{\n\t\tMetadata: &thirdweb.NFTMetadataInput{\n\t\t\tName: \"Cool NFT\",\n\t\t\tDescription: \"This is a cool NFT\",\n\t\t},\n\t\tSupply: 100,\n\t},\n\t&thirdweb.EditionMetadataInput{\n\t\tMetadata: &thirdweb.NFTMetadataInput{\n\t\t\tName: \"Cool NFT\",\n\t\t\tDescription: \"This is a cool NFT\",\n\t\t},\n\t\tSupply: 100,\n\t},\n}\n\ntx, err := contract.MintBatch(context.Background(), metadatasWithSupply)\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/edition#func-edition-mintbatch"
      }
    },
    {
      "name": "MintBatchTo",
      "summary": "Mint many NFTs to a specific wallet",
      "examples": {
        "go": "metadatasWithSupply := []*thirdweb.EditionMetadataInput{\n\t&thirdweb.EditionMetadataInput{\n\t\tMetadata: &thirdweb.NFTMetadataInput{\n\t\t\tName: \"Cool NFT\",\n\t\t\tDescription: \"This is a cool NFT\",\n\t\t},\n\t\tSupply: 100,\n\t},\n\t&thirdweb.EditionMetadataInput{\n\t\tMetadata: &thirdweb.NFTMetadataInput{\n\t\t\tName: \"Cool NFT\",\n\t\t\tDescription: \"This is a cool NFT\",\n\t\t},\n\t\tSupply: 100,\n\t},\n}\n\ntx, err := contract.MintBatchTo(context.Background(), \"{{wallet_address}}\", metadatasWithSupply)\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/edition#func-edition-mintbatchto"
      }
    },
    {
      "name": "MintBatch",
      "summary": "Mint many NFTs",
      "examples": {
        "go": "metadatasWithSupply := []*thirdweb.EditionMetadataInput{\n\t&thirdweb.EditionMetadataInput{\n\t\tMetadata: &thirdweb.NFTMetadataInput{\n\t\t\tName: \"Cool NFT\",\n\t\t\tDescription: \"This is a cool NFT\",\n\t\t},\n\t\tSupply: 100,\n\t},\n\t&thirdweb.EditionMetadataInput{\n\t\tMetadata: &thirdweb.NFTMetadataInput{\n\t\t\tName: \"Cool NFT\",\n\t\t\tDescription: \"This is a cool NFT\",\n\t\t},\n\t\tSupply: 100,\n\t},\n}\n\ntx, err := contract.MintBatch(context.Background(), metadatasWithSupply)\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/erc1155#func-erc1155-mintbatch"
      }
    },
    {
      "name": "MintBatchTo",
      "summary": "Mint many NFTs to a specific wallet",
      "examples": {
        "go": "metadatasWithSupply := []*thirdweb.EditionMetadataInput{\n\t&thirdweb.EditionMetadataInput{\n\t\tMetadata: &thirdweb.NFTMetadataInput{\n\t\t\tName: \"Cool NFT\",\n\t\t\tDescription: \"This is a cool NFT\",\n\t\t},\n\t\tSupply: 100,\n\t},\n\t&thirdweb.EditionMetadataInput{\n\t\tMetadata: &thirdweb.NFTMetadataInput{\n\t\t\tName: \"Cool NFT\",\n\t\t\tDescription: \"This is a cool NFT\",\n\t\t},\n\t\tSupply: 100,\n\t},\n}\n\ntx, err := contract.MintBatchTo(context.Background(), \"{{wallet_address}}\", metadatasWithSupply)\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/erc1155#func-erc1155-mintbatchto"
      }
    }
  ],
  "ERC20": [
    {
      "name": "Allowance",
      "summary": "Get token allowance for a specific spender",
      "examples": {
        "go": "spender := \"0x...\"\n\nallowance, err := contract.ERC20.Allowance(spender)\nallowanceValue := allowance.DisplayValue\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/erc20#func-erc20-allowance"
      }
    },
    {
      "name": "AllowanceOf",
      "summary": "Get token allowance for a specific spender and owner",
      "examples": {
        "go": "address := \"{{wallet_address}}\"\nspender := \"0x...\"\n\nallowance, err := contract.ERC20.AllowanceOf(address, spender)\nallowanceValue := allowance.DisplayValue\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/erc20#func-erc20-allowanceof"
      }
    },
    {
      "name": "Balance",
      "summary": "Get token balance",
      "examples": {
        "go": "balance, err := contract.ERC20.Balance()\nbalanceValue := balance.DisplayValue\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/erc20#func-erc20-balance"
      }
    },
    {
      "name": "BalanceOf",
      "summary": "Get token balance of a specific wallet",
      "examples": {
        "go": "address := \"{{wallet_address}}\"\nbalance, err := contract.ERC20.BalanceOf()\nbalanceValue := balance.DisplayValue\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/erc20#func-erc20-balanceof"
      }
    },
    {
      "name": "Get",
      "summary": "Get token metadata",
      "examples": {
        "go": "currency, err := contract.ERC20.Get()\nsymbol := currency.Symbol\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/erc20#func-erc20-get"
      }
    },
    {
      "name": "SetAllowance",
      "summary": "Set token allowance",
      "examples": {
        "go": "spender := \"0x...\"\namount := 1\n\ntx, err := contract.ERC20.SetAllowance(context.Background(), spender, amount)\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/erc20#func-erc20-setallowance"
      }
    },
    {
      "name": "TotalSupply",
      "summary": "Get the total minted supply",
      "examples": {
        "go": "supply, err := contract.ERC20.TotalSupply(context.Background())\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/erc20#func-erc20-totalsupply"
      }
    },
    {
      "name": "Transfer",
      "summary": "Transfer tokens",
      "examples": {
        "go": "to := \"0x...\"\namount := 1\n\ntx, err := contract.ERC20.Transfer(context.Background(), to, amount)\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/erc20#func-erc20-transfer"
      }
    },
    {
      "name": "TransferFrom",
      "summary": "Transfer tokens from a specific wallet",
      "examples": {
        "go": "from := \"{{wallet_address}}\"\nto := \"0x...\"\namount := 1\n\ntx, err := contract.ERC20.TransferFrom(context.Background(), from, to, amount)\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/erc20#func-erc20-transferfrom"
      }
    }
  ],
  "ERC20Burnable": [
    {
      "name": "Burn",
      "summary": "Burn tokens",
      "examples": {
        "go": "amount := 1\ntx, err := contract.ERC20.Burn(context.Background(), amount)\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/erc20#func-erc20-burn"
      }
    },
    {
      "name": "BurnFrom",
      "summary": "Burn tokens from a specific wallet",
      "examples": {
        "go": "holder := \"0x...\"\namount := 1\n\ntx, err := contract.ERC20.BurnFrom(context.Background(), holder, amount)\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/erc20#func-erc20-burnfrom"
      }
    }
  ],
  "ERC20Mintable": [
    {
      "name": "Mint",
      "summary": "Mint tokens",
      "examples": {
        "go": "tx, err := contract.ERC20.Mint(context.Background(), 1)\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/erc20#func-erc20-mint"
      }
    },
    {
      "name": "MintTo",
      "summary": "Mint tokens to a specific wallet",
      "examples": {
        "go": "tx, err := contract.ERC20.MintTo(context.Background(), \"{{wallet_address}}\", 1)\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/erc20#func-erc20-mintto"
      }
    }
  ],
  "ERC20BatchMintable": [
    {
      "name": "MintBatchTo",
      "summary": "Mint tokens to many wallets",
      "examples": {
        "go": "args = []*thirdweb.TokenAmount{\n\t&thirdweb.TokenAmount{\n\t\tToAddress: \"{{wallet_address}}\",\n\t\tAmount:    1\n\t}\n\t&thirdweb.TokenAmount{\n\t\tToAddress: \"{{wallet_address}}\",\n\t\tAmount:    2\n\t}\n}\n\ntx, err := contract.ERC20.MintBatchTo(context.Background(), args)\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/erc20#func-erc20-mintbatchto"
      }
    }
  ],
  "ERC721": [
    {
      "name": "Balance",
      "summary": "Get NFT balance",
      "examples": {
        "go": "balance, err := contract.ERC721.Balance(context.Background())\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/erc721#func-erc721-balance"
      }
    },
    {
      "name": "BalanceOf",
      "summary": "Get NFT balance of a specific wallet",
      "examples": {
        "go": "address := \"{{wallet_address}}\"\nbalance, err := contract.ERC721.BalanceOf(context.Background(), address)\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/erc721#func-erc721-balanceof"
      }
    },
    {
      "name": "Get",
      "summary": "Get an NFT",
      "examples": {
        "go": "nft, err := contract.ERC721.Get(context.Background(), 0)\nowner := nft.Owner\nname := nft.Metadata.Name\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/erc721#func-erc721-get"
      }
    },
    {
      "name": "IsApproved",
      "summary": "Check NFT approval",
      "examples": {
        "go": "owner := \"{{wallet_address}}\"\noperator := \"0x...\"\n\nisApproved, err := contract.ERC721.IsApproved(ctx, owner, operator)\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/erc721#func-erc721-isapproved"
      }
    },
    {
      "name": "OwnerOf",
      "summary": "Get the owner of an NFT",
      "examples": {
        "go": "tokenId := 0\nowner, err := contract.ERC721.OwnerOf(context.Background(), tokenId)\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/erc721#func-erc721-ownerof"
      }
    },
    {
      "name": "SetApprovalForAll",
      "summary": "Set approval for all NFTs",
      "examples": {
        "go": "operator := \"{{wallet_address}}\"\napproved := true\n\ntx, err := contract.ERC721.SetApprovalForAll(context.Background(), operator, approved)\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/erc721#func-erc721-setapprovalforall"
      }
    },
    {
      "name": "SetApprovalForToken",
      "summary": "Set approval for a specific NFT",
      "examples": {
        "go": "operator := \"{{wallet_address}}\"\napproved := \"0x...\"\ntokenId := 0\n\ntx, err := contract.ERC721.SetApprovalForToken(context.Background(), operator, approved, tokenId)\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/erc721#func-erc721-setapprovalfortoken"
      }
    },
    {
      "name": "TotalSupply",
      "summary": "Get the total number of NFTs",
      "examples": {
        "go": "supply, err := contract.ERC721.TotalSupply(context.Background)\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/erc721#func-erc721-totalsupply"
      }
    },
    {
      "name": "Transfer",
      "summary": "Transfer an NFT",
      "examples": {
        "go": "to := \"0x...\"\ntokenId := 0\n\ntx, err := contract.ERC721.Transfer(context.Background(), to, tokenId)\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/erc721#func-erc721-transfer"
      }
    }
  ],
  "ERC721Burnable": [
    {
      "name": "Burn",
      "summary": "Burna an NFT",
      "examples": {
        "go": "tokenId := 0\ntx, err := contract.ERC721.Burn(context.Background(), tokenId)\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/erc721#func-erc721-burn"
      }
    }
  ],
  "ERC721ClaimCustom": [
    {
      "name": "Claim",
      "summary": "Claim an NFT",
      "examples": {
        "go": ""
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/erc721#func-erc721-claim"
      }
    },
    {
      "name": "ClaimTo",
      "summary": "Claim NFTs to a specific wallet",
      "examples": {
        "go": "address := \"{{wallet_address}}\"\nquantity = 1\n\ntx, err := contract.ERC721.ClaimTo(context.Background(), address, quantity)\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/erc721#func-erc721-claimto"
      }
    },
    {
      "name": "GetTotalCount",
      "summary": "Get the total number of NFTs",
      "examples": {
        "go": "totalCount, err := contract.ERC721.GetTotalCount(context.Background())\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/erc721#func-erc721-gettotalcount"
      }
    },
    {
      "name": "TotalClaimedSupply",
      "summary": "Get the number of claimed NFTs",
      "examples": {
        "go": "totalClaimed, err := contract.ERC721.TotalClaimedSupply(context.Background())\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/erc721#func-erc721-totalclaimedsupply"
      }
    },
    {
      "name": "TotalUnclaimedSupply",
      "summary": "Get the number of unclaimed NFTs",
      "examples": {
        "go": "totalUnclaimed, err := contract.ERC721.TotalUnclaimedSupply(context.Background())\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/erc721#func-erc721-totalunclaimedsupply"
      }
    }
  ],
  "ERC721ClaimPhasesV2": [
    {
      "name": "Claim",
      "summary": "Claim an NFT",
      "examples": {
        "go": ""
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/erc721#func-erc721-claim"
      }
    },
    {
      "name": "ClaimTo",
      "summary": "Claim NFTs to a specific wallet",
      "examples": {
        "go": "address := \"{{wallet_address}}\"\nquantity = 1\n\ntx, err := contract.ERC721.ClaimTo(context.Background(), address, quantity)\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/erc721#func-erc721-claimto"
      }
    },
    {
      "name": "GetTotalCount",
      "summary": "Get the total number of NFTs",
      "examples": {
        "go": "totalCount, err := contract.ERC721.GetTotalCount(context.Background())\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/erc721#func-erc721-gettotalcount"
      }
    },
    {
      "name": "TotalClaimedSupply",
      "summary": "Get the number of claimed NFTs",
      "examples": {
        "go": "totalClaimed, err := contract.ERC721.TotalClaimedSupply(context.Background())\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/erc721#func-erc721-totalclaimedsupply"
      }
    },
    {
      "name": "TotalUnclaimedSupply",
      "summary": "Get the number of unclaimed NFTs",
      "examples": {
        "go": "totalUnclaimed, err := contract.ERC721.TotalUnclaimedSupply(context.Background())\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/erc721#func-erc721-totalunclaimedsupply"
      }
    }
  ],
  "ERC721ClaimConditionsV2": [
    {
      "name": "Claim",
      "summary": "Claim an NFT",
      "examples": {
        "go": ""
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/erc721#func-erc721-claim"
      }
    },
    {
      "name": "ClaimTo",
      "summary": "Claim NFTs to a specific wallet",
      "examples": {
        "go": "address := \"{{wallet_address}}\"\nquantity = 1\n\ntx, err := contract.ERC721.ClaimTo(context.Background(), address, quantity)\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/erc721#func-erc721-claimto"
      }
    },
    {
      "name": "GetTotalCount",
      "summary": "Get the total number of NFTs",
      "examples": {
        "go": "totalCount, err := contract.ERC721.GetTotalCount(context.Background())\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/erc721#func-erc721-gettotalcount"
      }
    },
    {
      "name": "TotalClaimedSupply",
      "summary": "Get the number of claimed NFTs",
      "examples": {
        "go": "totalClaimed, err := contract.ERC721.TotalClaimedSupply(context.Background())\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/erc721#func-erc721-totalclaimedsupply"
      }
    },
    {
      "name": "TotalUnclaimedSupply",
      "summary": "Get the number of unclaimed NFTs",
      "examples": {
        "go": "totalUnclaimed, err := contract.ERC721.TotalUnclaimedSupply(context.Background())\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/erc721#func-erc721-totalunclaimedsupply"
      }
    }
  ],
  "ERC721LazyMintable": [
    {
      "name": "CreateBatch",
      "summary": "Lazy mint NFTs",
      "examples": {
        "go": "image0, err := os.Open(\"path/to/image/0.jpg\")\ndefer image0.Close()\n\nimage1, err := os.Open(\"path/to/image/1.jpg\")\ndefer image1.Close()\n\nmetadatas := []*thirdweb.NFTMetadataInput{\n\t&thirdweb.NFTMetadataInput{\n\t\tName: \"Cool NFT\",\n\t\tDescription: \"This is a cool NFT\",\n\t\tImage: image1\n\t}\n\t&thirdweb.NFTMetadataInput{\n\t\tName: \"Cool NFT 2\",\n\t\tDescription: \"This is also a cool NFT\",\n\t\tImage: image2\n\t}\n}\n\ntx, err := contract.ERC721.CreateBatch(context.Background(), metadatas)\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/erc721#func-erc721-createbatch"
      }
    }
  ],
  "ERC721Supply": [
    {
      "name": "GetAll",
      "summary": "Get all NFTs",
      "examples": {
        "go": "nfts, err := contract.ERC721.GetAll(context.Background())\nownerOne := nfts[0].Owner\nnameOne := nfts[0].Metadata.Name\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/erc721#func-erc721-getall"
      }
    }
  ],
  "ERC721Enumerable": [
    {
      "name": "GetAll",
      "summary": "Get all NFTs",
      "examples": {
        "go": "nfts, err := contract.ERC721.GetAll(context.Background())\nownerOne := nfts[0].Owner\nnameOne := nfts[0].Metadata.Name\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/erc721#func-erc721-getall"
      }
    }
  ],
  "ERC721Mintable": [
    {
      "name": "Mint",
      "summary": "Mint an NFT",
      "examples": {
        "go": "image, err := os.Open(\"path/to/image.jpg\")\ndefer image.Close()\n\nmetadata := &thirdweb.NFTMetadataInput{\n\tName: \"Cool NFT\",\n\tDescription: \"This is a cool NFT\",\n\tImage: image,\n}\n\ntx, err := contract.ERC721.Mint(context.Background(), metadata)\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/erc721#func-erc721-mint"
      }
    },
    {
      "name": "MintTo",
      "summary": "Mint an NFT to a specific wallet",
      "examples": {
        "go": "image, err := os.Open(\"path/to/image.jpg\")\ndefer image.Close()\n\nmetadata := &thirdweb.NFTMetadataInput{\n\tName: \"Cool NFT\",\n\tDescription: \"This is a cool NFT\",\n\tImage: image,\n}\n\ntx, err := contract.ERC721.MintTo(context.Background(), \"{{wallet_address}}\", metadata)\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/erc721#func-erc721-mintto"
      }
    }
  ],
  "ERC721BatchMintable": [
    {
      "name": "MintBatch",
      "summary": "Mint many NFTs",
      "examples": {
        "go": "metadatas := []*thirdweb.NFTMetadataInput{\n\t&thirdweb.NFTMetadataInput{\n\t\tName: \"Cool NFT\",\n\t\tDescription: \"This is a cool NFT\",\n\t}\n\t&thirdweb.NFTMetadataInput{\n\t\tName: \"Cool NFT 2\",\n\t\tDescription: \"This is also a cool NFT\",\n\t}\n}\n\ntx, err := contract.ERC721.MintBatchTo(context.Background(), metadatas)\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/erc721#func-erc721-mintbatch"
      }
    },
    {
      "name": "MintBatchTo",
      "summary": "Mint many NFTs to a specific wallet",
      "examples": {
        "go": "metadatas := []*thirdweb.NFTMetadataInput{\n\t&thirdweb.NFTMetadataInput{\n\t\tName: \"Cool NFT\",\n\t\tDescription: \"This is a cool NFT\",\n\t}\n\t&thirdweb.NFTMetadataInput{\n\t\tName: \"Cool NFT 2\",\n\t\tDescription: \"This is also a cool NFT\",\n\t}\n}\n\ntx, err := contract.ERC721.MintBatchTo(context.Background(), \"{{wallet_address}}\", metadatas)\n"
      },
      "reference": {
        "go": "https://docs.thirdweb.com/go/erc721#func-erc721-mintbatchto"
      }
    }
  ]
}

---

## File: docs/feature_snippets_python.json

{
    "ContractMetadata": [
        {
            "name": "get",
            "summary": "Get the contract metadata",
            "examples": {
                "python": "metadata = contract.metadata.get()\nprint(metadata)"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/contract-metadata#get"
            }
        },
        {
            "name": "set",
            "summary": "Set the contract metadata",
            "examples": {
                "python": "from thirdweb.types import ContractMetadataSchema\n\nmetadata = ContractMetadataSchema.from_json({\n    \"name\": \"My Contract\",\n    \"description\": \"This is my contract!\",\n    \"image\": open(\"path/to/file.jpg\", \"rb\")\n})\n\nreceipt = contract.metadata.set(metadata)"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/contract-metadata#set"
            }
        }
    ],
    "PlatformFee": [
        {
            "name": "get",
            "summary": "Get the contract platform fees",
            "examples": {
                "python": "platform_fees = contract.platform_fee.get()\nprint(platform_fees.platform_fee_basis_points)\nprint(platform_fees.platform_fee_recipient)"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/contract-platform-fee#get"
            }
        },
        {
            "name": "set",
            "summary": "Set the contract platform fees",
            "examples": {
                "python": "from thirdweb.types import ContractPlatformFeeSchema\n\nplatform_fee_info = ContractPlatformFeeSchema(\n    platform_fee_basis_points=100 # 1%\n    platform_fee_recipient=\"{{wallet_address}}\"\n)\n\nreceipt = contract.platform_fee.set(platform_fee_info)"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/contract-platform-fee#set"
            }
        }
    ],
    "Permissions": [
        {
            "name": "get",
            "summary": "Get all members of a role on this contract.",
            "examples": {
                "python": "from thirdweb.constants.role import Role\n\n# Select any role to filter by\nrole = Role.ADMIN\n\nrole_members = contract.roles.get(role)\nprint(role_members)"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/contract-roles#get"
            }
        },
        {
            "name": "grant",
            "summary": "Grant a role to a wallet",
            "examples": {
                "python": "from thirdweb.constants.role import Role\n\naddress = \"{{wallet_address}}\" # Address to grant a role\nrole = Role.ADMIN # Select a role to grant\n\nreceipt = contract.roles.grant(role, address)"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/contract-roles#grant"
            }
        }
    ],
    "PermissionsEnumerable": [
        {
            "name": "get_all",
            "summary": "Get all role members on this contract.",
            "examples": {
                "python": "all_role_members = contract.roles.get_all()\nprint(all_role_members)"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/contract-roles#get_all"
            }
        }
    ],
    "Royalty": [
        {
            "name": "get_default_royalty_info",
            "summary": "Get the royalty recipient and fee        ```python        royalty_info = contract.royalties.get_default_royalty_info()        print(royalty_info)        ```",
            "examples": {
                "python": "royalty_info = contract.royalties.get_default_royalty_info()\nprint(royalty_info)"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/contract-royalty#get_default_royalty_info"
            }
        },
        {
            "name": "set_default_royalty_info",
            "summary": "Set the royalty recipient and fee",
            "examples": {
                "python": "from thirdweb.types import ContractRoyaltySchema\n\nroyalty_data = ContractRoyaltySchema(\n    seller_fee_basis_points=100,\n    fee_recipient=\"{{wallet_address}}\"\n)\n\nreceipt = contract.royalties.set_default_royalty_info()"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/contract-royalty#set_default_royalty_info"
            }
        },
        {
            "name": "set_token_royalty_info",
            "summary": "Set the royalty recipient and fee for a specific token",
            "examples": {
                "python": "from thirdweb.types import ContractRoyaltySchema\n\ntoken_id = 0\nroyalty_data = ContractRoyaltySchema(\n    seller_fee_basis_points=100,\n    fee_recipient=\"{{wallet_address}}\"\n)\n\nreceipt = contract.royalties.set_token_royalty_info(token_id, royalty_data)"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/contract-royalty#set_token_royalty_info"
            }
        }
    ],
    "PrimarySale": [
        {
            "name": "get_recipient",
            "summary": "Get the contract primary sale recipient",
            "examples": {
                "python": "primary_sale_recipient = contract.sales.get_recipient()\nprint(primary_sale_recipient)"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/contract-sales#get_recipient"
            }
        },
        {
            "name": "set_recipient",
            "summary": "Set the contract primary sale recipient",
            "examples": {
                "python": "primary_sale_recipient = \"{{wallet_address}}\"\n\nreceipt = contract.sales.set_recipient(primary_sale_recipient)"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/contract-sales#set_recipient"
            }
        }
    ],
    "ERC20": [
        {
            "name": "allowance",
            "summary": "Get the allowance of a specific spender",
            "examples": {
                "python": "spender = \"{{wallet_address}}\"\nallowance = contract.erc20.allowance(spender)\nprint(allowance)"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/erc20#allowance"
            }
        },
        {
            "name": "allowance_of",
            "summary": "Get the allowance of a spender for a specific owner",
            "examples": {
                "python": "# Address of the wallet who owns the funds\naddress = \"{{wallet_address}}\"\n\n# Address of the wallet to check the token allowance\nspender = \"0x...\"\n\nallowance = contract.erc20.allowance_of(address, spender)\nprint(allowance)"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/erc20#allowance_of"
            }
        },
        {
            "name": "balance",
            "summary": "Get token balance",
            "examples": {
                "python": "balance = contract.erc20.balance()\nprint(balance)"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/erc20#balance"
            }
        },
        {
            "name": "balance_of",
            "summary": "Get token balance of a specific wallet",
            "examples": {
                "python": "address = \"{{wallet_address}}\"\nbalance = contract.erc20.balance_of(address)\nprint(balance)"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/erc20#balance_of"
            }
        },
        {
            "name": "get",
            "summary": "Get token metadata",
            "examples": {
                "python": "token = contract.erc20.get()\nprint(token)"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/erc20#get"
            }
        },
        {
            "name": "set_allowance",
            "summary": "Approve a specific wallet to spend tokens",
            "examples": {
                "python": "spender = \"0x...\"\namount = 100\ncontract.erc20.set_allowance(spender, amount)"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/erc20#set_allowance"
            }
        },
        {
            "name": "total_supply",
            "summary": "Get the total minted supply",
            "examples": {
                "python": "supply = contract.erc20.total_supply()\nprint(supply)"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/erc20#total_supply"
            }
        },
        {
            "name": "transfer",
            "summary": "Transfer tokens",
            "examples": {
                "python": "# Address to send tokens to\nto = \"0x...\n\n# Amount of tokens to transfer\namount = 0.1\n\ncontract.erc20.transfer(to, amount)"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/erc20#transfer"
            }
        },
        {
            "name": "transfer_from",
            "summary": "Transfer tokens from a specific wallet",
            "examples": {
                "python": "# Address to send tokens from\nfr = \"{{wallet_address}}\"\n\n# Address to send tokens to\nto = \"0x...\"\n\n# Amount of tokens to transfer\namount = 0.1\n\ncontract.erc20.transfer_from(fr, to, amount)"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/erc20#transfer_from"
            }
        }
    ],
    "ERC20Burnable": [
        {
            "name": "burn",
            "summary": "Burn tokens",
            "examples": {
                "python": "amount = 0.1\ncontract.erc20.burn(amount)"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/erc20#burn"
            }
        },
        {
            "name": "burn_from",
            "summary": "Burn tokens from a specific wallet",
            "examples": {
                "python": "holder = \"{{wallet_address}}\"\namount = 0.1\ncontract.erc20.burn_from(holder, amount)"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/erc20#burn_from"
            }
        }
    ],
    "ERC20Mintable": [
        {
            "name": "mint",
            "summary": "Mint tokens",
            "examples": {
                "python": "address = \"{{wallet_address}}\"\namount = 100\n\nreceipt = contract.erc20.mint(amount)"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/erc20#mint"
            }
        },
        {
            "name": "mint_to",
            "summary": "Mint tokens to a specific wallet",
            "examples": {
                "python": "address = \"{{wallet_address}}\"\namount = 100\n\nreceipt = contract.erc20.mint_to(address, amount)"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/erc20#mint_to"
            }
        }
    ],
    "ERC20BatchMintable": [
        {
            "name": "mint_batch_to",
            "summary": "Mint tokens to many wallets",
            "examples": {
                "python": "from thirdweb.types.currency import TokenAmount\n\nargs = [\n    TokenAmount(\"{{wallet_address}}\", 1),\n    TokenAmount(\"{{wallet_address}}\", 2),\n]\n\n:extension: ERC20BatchMintable\ncontract.erc20.mint_batch_to(args)"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/erc20#mint_batch_to"
            }
        }
    ],
    "ERC721": [
        {
            "name": "balance",
            "summary": "Get NFT balance",
            "examples": {
                "python": "balance = contract.erc721.balance()\nprint(balance)"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/erc721#balance"
            }
        },
        {
            "name": "balance_of",
            "summary": "Get NFT balance of a specific wallet",
            "examples": {
                "python": "balance = contract.erc721.balance_of(\"{{wallet_address}}\")\nprint(balance)"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/erc721#balance_of"
            }
        },
        {
            "name": "get",
            "summary": "Get a single NFT",
            "examples": {
                "python": "nft = contract.erc721.get(0)\nprint(nft)"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/erc721#get"
            }
        },
        {
            "name": "is_approved",
            "summary": "Check approval of a specific wallet",
            "examples": {
                "python": "address = \"{{wallet_address}}\"\noperator = \"0x...\"\n\nis_approved = contract.erc721.is_approved(address, operator)\nprint(is_approved)"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/erc721#is_approved"
            }
        },
        {
            "name": "owner_of",
            "summary": "Get the owner of an NFT",
            "examples": {
                "python": "token_id = 0\n\nowner = contract.erc721.owner_of(token_id)\nprint(owner)"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/erc721#owner_of"
            }
        },
        {
            "name": "set_approval_for_all",
            "summary": "Set approval for all NFTs",
            "examples": {
                "python": "operator = \"{{wallet_address}}\"\napproved = \"0x...\"\n\nreceipt = contract.erc721.set_approval_for_all(operator, approved)"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/erc721#set_approval_for_all"
            }
        },
        {
            "name": "transfer",
            "summary": "Transfer an NFT",
            "examples": {
                "python": "to = \"{{wallet_address}}\"\ntoken_id = 0\n\nreceipt = contract.erc721.transfer(to, token_id)"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/erc721#transfer"
            }
        }
    ],
    "ERC721Burnable": [
        {
            "name": "burn",
            "summary": "Burn an NFT",
            "examples": {
                "python": "token_id = 0 \n\nreceipt = contract.erc721.burn(token_id)"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/erc721#burn"
            }
        }
    ],
    "ERC721ClaimCustom": [
        {
            "name": "claim",
            "summary": "Claim NFTs",
            "examples": {
                "python": "quantity = 1\n\ntx = contract.erc721.claim(quantity)\nreceipt = tx.receipt\nclaimed_token_id = tx.id\nclaimed_nft = tx.data()"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/erc721#claim"
            }
        },
        {
            "name": "claim_to",
            "summary": "Claim NFTs to a specific wallet",
            "examples": {
                "python": "address = {{wallet_address}}\nquantity = 1\n\ntx = contract.erc721.claim_to(address, quantity)\nreceipt = tx.receipt\nclaimed_token_id = tx.id\nclaimed_nft = tx.data()"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/erc721#claim_to"
            }
        },
        {
            "name": "get_total_count",
            "summary": "Get the total number of NFTs",
            "examples": {
                "python": "total_count = contract.erc721.get_total_count()\nprint(total_count)"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/erc721#get_total_count"
            }
        },
        {
            "name": "total_claimed_supply",
            "summary": "Get the number of claimed NFTs",
            "examples": {
                "python": "total_claimed = contract.erc721.total_claimed_supply()\nprint(total_claimed)"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/erc721#total_claimed_supply"
            }
        },
        {
            "name": "total_supply",
            "summary": "Get the total number of NFTs",
            "examples": {
                "python": "total_supply = contract.erc721.total_supply()\nprint(total_supply)"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/erc721#total_supply"
            }
        },
        {
            "name": "total_unclaimed_supply",
            "summary": "Get the number of unclaimed NFTs",
            "examples": {
                "python": "total_unclaimed = contract.erc721.total_unclaimed_supply()\nprint(total_unclaimed)"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/erc721#total_unclaimed_supply"
            }
        }
    ],
    "ERC721ClaimPhasesV2": [
        {
            "name": "claim",
            "summary": "Claim NFTs",
            "examples": {
                "python": "quantity = 1\n\ntx = contract.erc721.claim(quantity)\nreceipt = tx.receipt\nclaimed_token_id = tx.id\nclaimed_nft = tx.data()"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/erc721#claim"
            }
        },
        {
            "name": "claim_to",
            "summary": "Claim NFTs to a specific wallet",
            "examples": {
                "python": "address = {{wallet_address}}\nquantity = 1\n\ntx = contract.erc721.claim_to(address, quantity)\nreceipt = tx.receipt\nclaimed_token_id = tx.id\nclaimed_nft = tx.data()"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/erc721#claim_to"
            }
        },
        {
            "name": "get_total_count",
            "summary": "Get the total number of NFTs",
            "examples": {
                "python": "total_count = contract.erc721.get_total_count()\nprint(total_count)"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/erc721#get_total_count"
            }
        },
        {
            "name": "total_claimed_supply",
            "summary": "Get the number of claimed NFTs",
            "examples": {
                "python": "total_claimed = contract.erc721.total_claimed_supply()\nprint(total_claimed)"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/erc721#total_claimed_supply"
            }
        },
        {
            "name": "total_supply",
            "summary": "Get the total number of NFTs",
            "examples": {
                "python": "total_supply = contract.erc721.total_supply()\nprint(total_supply)"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/erc721#total_supply"
            }
        },
        {
            "name": "total_unclaimed_supply",
            "summary": "Get the number of unclaimed NFTs",
            "examples": {
                "python": "total_unclaimed = contract.erc721.total_unclaimed_supply()\nprint(total_unclaimed)"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/erc721#total_unclaimed_supply"
            }
        }
    ],
    "ERC721ClaimConditionsV2": [
        {
            "name": "claim",
            "summary": "Claim NFTs",
            "examples": {
                "python": "quantity = 1\n\ntx = contract.erc721.claim(quantity)\nreceipt = tx.receipt\nclaimed_token_id = tx.id\nclaimed_nft = tx.data()"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/erc721#claim"
            }
        },
        {
            "name": "claim_to",
            "summary": "Claim NFTs to a specific wallet",
            "examples": {
                "python": "address = {{wallet_address}}\nquantity = 1\n\ntx = contract.erc721.claim_to(address, quantity)\nreceipt = tx.receipt\nclaimed_token_id = tx.id\nclaimed_nft = tx.data()"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/erc721#claim_to"
            }
        },
        {
            "name": "get_total_count",
            "summary": "Get the total number of NFTs",
            "examples": {
                "python": "total_count = contract.erc721.get_total_count()\nprint(total_count)"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/erc721#get_total_count"
            }
        },
        {
            "name": "total_claimed_supply",
            "summary": "Get the number of claimed NFTs",
            "examples": {
                "python": "total_claimed = contract.erc721.total_claimed_supply()\nprint(total_claimed)"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/erc721#total_claimed_supply"
            }
        },
        {
            "name": "total_supply",
            "summary": "Get the total number of NFTs",
            "examples": {
                "python": "total_supply = contract.erc721.total_supply()\nprint(total_supply)"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/erc721#total_supply"
            }
        },
        {
            "name": "total_unclaimed_supply",
            "summary": "Get the number of unclaimed NFTs",
            "examples": {
                "python": "total_unclaimed = contract.erc721.total_unclaimed_supply()\nprint(total_unclaimed)"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/erc721#total_unclaimed_supply"
            }
        }
    ],
    "ERC721LazyMintable": [
        {
            "name": "create_batch",
            "summary": "Lazy mint NFTs",
            "examples": {
                "python": "from thirdweb.types.nft import NFTMetadataInput\n\n# You can customize this metadata however you like\nmetadatas = [\n    NFTMetadataInput.from_json({\n        \"name\": \"Cool NFT\",\n        \"description\": \"This is a cool NFT\",\n        \"image\": open(\"path/to/file.jpg\", \"rb\"),\n    }),\n    NFTMetadataInput.from_json({\n        \"name\": \"Cooler NFT\",\n        \"description\": \"This is a cooler NFT\",\n        \"image\": open(\"path/to/file.jpg\", \"rb\"),\n    }),\n]\n\ntxs = contract.erc721.create_batch(metadatas)\nfirst_token_id = txs[0].id\nfirst_nft = txs[0].data()"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/erc721#create_batch"
            }
        }
    ],
    "ERC721Supply": [
        {
            "name": "get_all",
            "summary": "Get all NFTs",
            "examples": {
                "python": "nfts = contract.erc721.get_all()\nprint(nfts)"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/erc721#get_all"
            }
        }
    ],
    "ERC721Enumerable": [
        {
            "name": "get_all",
            "summary": "Get all NFTs",
            "examples": {
                "python": "nfts = contract.erc721.get_all()\nprint(nfts)"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/erc721#get_all"
            }
        }
    ],
    "ERC721Mintable": [
        {
            "name": "mint",
            "summary": "Mint an NFT",
            "examples": {
                "python": "from thirdweb.types.nft import NFTMetadataInput\n\n# You can customize the metadata to your needs\nmetadata = NFTMetadataInput.from_json({\n    \"name\": \"Cool NFT\",\n    \"description\": \"This is a cool NFT\",\n    \"image\": open(\"path/to/file.jpg\", \"rb\")\n})\n\ntx = contract.erc721.mint(metadata)\nreceipt = tx.receipt\ntoken_id = tx.id\nnft = tx.data()"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/erc721#mint"
            }
        },
        {
            "name": "mint_to",
            "summary": "Mint an NFT to a specific wallet",
            "examples": {
                "python": "from thirdweb.types.nft import NFTMetadataInput\n\n# Note that you can customize this metadata however you like\nmetadata = NFTMetadataInput.from_json({\n    \"name\": \"Cool NFT\",\n    \"description\": \"This is a cool NFT\",\n    \"image\": open(\"path/to/file.jpg\", \"rb\"),\n})\n\n# You can pass in any address here to mint the NFT to\ntx = contract.erc721.mint_to(\"{{wallet_address}}\", metadata)\nreceipt = tx.receipt\ntoken_id = tx.id\nnft = tx.data()"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/erc721#mint_to"
            }
        }
    ],
    "ERC721BatchMintable": [
        {
            "name": "mint_batch",
            "summary": "Mint many NFTs",
            "examples": {
                "python": "from thirdweb.types.nft import NFTMetadataInput\n\n# You can customize this metadata however you like\nmetadatas = [\n    NFTMetadataInput.from_json({\n        \"name\": \"Cool NFT\",\n        \"description\": \"This is a cool NFT\",\n        \"image\": open(\"path/to/file.jpg\", \"rb\"),\n    }),\n    NFTMetadataInput.from_json({\n        \"name\": \"Cooler NFT\",\n        \"description\": \"This is a cooler NFT\",\n        \"image\": open(\"path/to/file.jpg\", \"rb\"),\n    }),\n]\n\n# You can pass in any address here to mint the NFT to\ntxs = contract.erc721.mint_batch(metadatas)\nreceipt = txs[0].receipt\nfirst_token_id = txs[0].id\nfirst_nft = txs[0].data()"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/erc721#mint_batch"
            }
        },
        {
            "name": "mint_batch_to",
            "summary": "Mint many NFTs to a specific wallet",
            "examples": {
                "python": "from thirdweb.types.nft import NFTMetadataInput\n\n# You can customize this metadata however you like\nmetadatas = [\n    NFTMetadataInput.from_json({\n        \"name\": \"Cool NFT\",\n        \"description\": \"This is a cool NFT\",\n        \"image\": open(\"path/to/file.jpg\", \"rb\"),\n    }),\n    NFTMetadataInput.from_json({\n        \"name\": \"Cooler NFT\",\n        \"description\": \"This is a cooler NFT\",\n        \"image\": open(\"path/to/file.jpg\", \"rb\"),\n    }),\n]\n\n# You can pass in any address here to mint the NFT to\ntxs = contract.erc721.mint_batch_to(\"{{wallet_address}}\", metadatas)\nreceipt = txs[0].receipt\nfirst_token_id = txs[0].id\nfirst_nft = txs[0].data()"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/erc721#mint_batch_to"
            }
        }
    ],
    "ERC1155": [
        {
            "name": "balance",
            "summary": "Get NFT balance",
            "examples": {
                "python": "token_id = 0\n\nbalance = contract.erc1155.balance(token_id)\nprint(balance)"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/erc1155#balance"
            }
        },
        {
            "name": "balance_of",
            "summary": "Get NFT balance of a specific wallet",
            "examples": {
                "python": "address = \"{{wallet_address}}\"\ntoken_id = 0\n\nbalance = contract.erc1155.balance_of(address, token_id)"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/erc1155#balance_of"
            }
        },
        {
            "name": "get",
            "summary": "Get an NFT",
            "examples": {
                "python": "nft = contract.erc1155.get(0)\nprint(nft)"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/erc1155#get"
            }
        },
        {
            "name": "set_approval_for_all",
            "summary": "Set approval for all NFTs",
            "examples": {
                "python": "operator = \"{{wallet_address}}\"\napproved = \"0x...\"\n\nreceipt = contract.erc1155.set_approval_for_all(operator, approved)"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/erc1155#set_approval_for_all"
            }
        },
        {
            "name": "total_supply",
            "summary": "Get the total number of NFTs",
            "examples": {
                "python": "token_id = 0\n\ntotal_supply = contract.erc1155.total_supply(token_id)\nprint(total_supply)"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/erc1155#total_supply"
            }
        },
        {
            "name": "transfer",
            "summary": "Transfer NFTs",
            "examples": {
                "python": "to = \"{{wallet_address}}\"\ntoken_id = 0\namount = 1\n\nreceipt = contract.erc1155.transfer(to, token_id, amount)"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/erc1155#transfer"
            }
        }
    ],
    "ERC1155Burnable": [
        {
            "name": "burn",
            "summary": "Burn NFTs",
            "examples": {
                "python": "token_id = 0\namount = 1\n\nreceipt = contract.erc1155.burn(token_id, amount)"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/erc1155#burn"
            }
        }
    ],
    "ERC1155ClaimCustom": [
        {
            "name": "claim",
            "summary": "Claim NFTs",
            "examples": {
                "python": "token_id = 0\nquantity = 1\n\ntx = contract.erc1155.claim(token_id, quantity)\nreceipt = tx.receipt\nclaimed_token_id = tx.id\nclaimed_nft = tx.data()"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/erc1155#claim"
            }
        },
        {
            "name": "claim_to",
            "summary": "Claim NFTs to a specific wallet",
            "examples": {
                "python": "address = {{wallet_address}}\ntoken_id = 0\nquantity = 1\n\ntx = contract.erc1155.claim_to(address, token_id, quantity)\nreceipt = tx.receipt\nclaimed_token_id = tx.id\nclaimed_nft = tx.data()"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/erc1155#claim_to"
            }
        }
    ],
    "ERC1155ClaimPhasesV2": [
        {
            "name": "claim",
            "summary": "Claim NFTs",
            "examples": {
                "python": "token_id = 0\nquantity = 1\n\ntx = contract.erc1155.claim(token_id, quantity)\nreceipt = tx.receipt\nclaimed_token_id = tx.id\nclaimed_nft = tx.data()"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/erc1155#claim"
            }
        },
        {
            "name": "claim_to",
            "summary": "Claim NFTs to a specific wallet",
            "examples": {
                "python": "address = {{wallet_address}}\ntoken_id = 0\nquantity = 1\n\ntx = contract.erc1155.claim_to(address, token_id, quantity)\nreceipt = tx.receipt\nclaimed_token_id = tx.id\nclaimed_nft = tx.data()"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/erc1155#claim_to"
            }
        }
    ],
    "ERC1155ClaimConditionsV2": [
        {
            "name": "claim",
            "summary": "Claim NFTs",
            "examples": {
                "python": "token_id = 0\nquantity = 1\n\ntx = contract.erc1155.claim(token_id, quantity)\nreceipt = tx.receipt\nclaimed_token_id = tx.id\nclaimed_nft = tx.data()"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/erc1155#claim"
            }
        },
        {
            "name": "claim_to",
            "summary": "Claim NFTs to a specific wallet",
            "examples": {
                "python": "address = {{wallet_address}}\ntoken_id = 0\nquantity = 1\n\ntx = contract.erc1155.claim_to(address, token_id, quantity)\nreceipt = tx.receipt\nclaimed_token_id = tx.id\nclaimed_nft = tx.data()"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/erc1155#claim_to"
            }
        }
    ],
    "ERC1155LazyMintableV2": [
        {
            "name": "create_batch",
            "summary": "Lazy mint NFTs",
            "examples": {
                "python": "from thirdweb.types.nft import NFTMetadataInput, EditionMetadataInput\n\n# Note that you can customize this metadata however you like\nmetadatas_with_supply = [\n    EditionMetadataInput(\n        NFTMetadataInput.from_json({\n            \"name\": \"Cool NFT\",\n            \"description\": \"This is a cool NFT\",\n            \"image\": open(\"path/to/file.jpg\", \"rb\"),\n        }),\n        100\n    ),\n    EditionMetadataInput(\n        NFTMetadataInput.from_json({\n            \"name\": \"Cooler NFT\",\n            \"description\": \"This is a cooler NFT\",\n            \"image\": open(\"path/to/file.jpg\", \"rb\"),\n        }),\n        100\n    )\n]\n\ntxs = contract.erc1155.create_batch(metadata_with_supply)\nfirst_token_id = txs[0].id\nfirst_nft = txs[0].data()"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/erc1155#create_batch"
            }
        }
    ],
    "ERC1155Enumerable": [
        {
            "name": "get_all",
            "summary": "Get all NFTs",
            "examples": {
                "python": "metadatas = contract.erc1155.get_all()\nprint(metadatas)"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/erc1155#get_all"
            }
        },
        {
            "name": "get_owned",
            "summary": "Get NFTs owned by a specific wallet",
            "examples": {
                "python": "address = \"{{wallet_address}}\"\nowned = contract.erc1155.get_owned(address)\nprint(owned)"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/erc1155#get_owned"
            }
        },
        {
            "name": "get_total_count",
            "summary": "Get the total number of NFTs",
            "examples": {
                "python": "total_count = contract.erc1155.get_total_count()\nprint(total_count)"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/erc1155#get_total_count"
            }
        }
    ],
    "ERC1155Mintable": [
        {
            "name": "mint",
            "summary": "Mint a new NFT",
            "examples": {
                "python": "from thirdweb.types.nft import NFTMetadataInput, EditionMetadataInput\n\n# Note that you can customize this metadata however you like\nmetadata_with_supply = EditionMetadataInput(\n    NFTMetadataInput.from_json({\n        \"name\": \"Cool NFT\",\n        \"description\": \"This is a cool NFT\",\n        \"image\": open(\"path/to/file.jpg\", \"rb\"),\n    }),\n    100\n)\n\n# You can pass in any address here to mint the NFT to\ntx = contract.erc1155.mint(metadata_with_supply)\nreceipt = tx.receipt\ntoken_id = tx.id\nnft = tx.data()"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/erc1155#mint"
            }
        },
        {
            "name": "mint_additional_supply",
            "summary": "Mint additional supply of an NFT",
            "examples": {
                "python": "token_id = 0\nadditional_supply = 1\n\ntx = contract.erc1155.mint_additional_supply(token_id, additional_supply)\nreceipt = tx.receipt\ntoken_id = tx.id\nnft = tx.data()"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/erc1155#mint_additional_supply"
            }
        },
        {
            "name": "mint_additional_supply_to",
            "summary": "Mint additional supply of an NFT to a specific wallet",
            "examples": {
                "python": "to = \"{{wallet_address}}\"\ntoken_id = 0\nadditional_supply = 1\n\ntx = contract.erc1155.mint_additional_supply_to(to, token_id, additional_supply)\nreceipt = tx.receipt\ntoken_id = tx.id\nnft = tx.data()"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/erc1155#mint_additional_supply_to"
            }
        },
        {
            "name": "mint_to",
            "summary": "Mint a new NFT to a specific wallet",
            "examples": {
                "python": "from thirdweb.types.nft import NFTMetadataInput, EditionMetadataInput\n\n# Note that you can customize this metadata however you like\nmetadata_with_supply = EditionMetadataInput(\n    NFTMetadataInput.from_json({\n        \"name\": \"Cool NFT\",\n        \"description\": \"This is a cool NFT\",\n        \"image\": open(\"path/to/file.jpg\", \"rb\"),\n    }),\n    100\n)\n\n# You can pass in any address here to mint the NFT to\ntx = contract.erc1155.mint_to(\"{{wallet_address}}\", metadata_with_supply)\nreceipt = tx.receipt\ntoken_id = tx.id\nnft = tx.data()"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/erc1155#mint_to"
            }
        }
    ],
    "ERC1155BatchMintable": [
        {
            "name": "mint_batch",
            "summary": "Mint many NFTs",
            "examples": {
                "python": "from thirdweb.types.nft import NFTMetadataInput, EditionMetadataInput\n\n# Note that you can customize this metadata however you like\nmetadatas_with_supply = [\n    EditionMetadataInput(\n        NFTMetadataInput.from_json({\n            \"name\": \"Cool NFT\",\n            \"description\": \"This is a cool NFT\",\n            \"image\": open(\"path/to/file.jpg\", \"rb\"),\n        }),\n        100\n    ),\n    EditionMetadataInput(\n        NFTMetadataInput.from_json({\n            \"name\": \"Cooler NFT\",\n            \"description\": \"This is a cooler NFT\",\n            \"image\": open(\"path/to/file.jpg\", \"rb\"),\n        }),\n        100\n    )\n]\n\n# You can pass in any address here to mint the NFT to\ntxs = contract.erc1155.mint_batch(metadatas_with_supply)\nreceipt = txs[0].receipt\ntoken_id = txs[0].id\nnft = txs[0].data()"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/erc1155#mint_batch"
            }
        },
        {
            "name": "mint_batch_to",
            "summary": "Mint many NFTs to a specific wallet",
            "examples": {
                "python": "from thirdweb.types.nft import NFTMetadataInput, EditionMetadataInput\n\n# Note that you can customize this metadata however you like\nmetadatas_with_supply = [\n    EditionMetadataInput(\n        NFTMetadataInput.from_json({\n            \"name\": \"Cool NFT\",\n            \"description\": \"This is a cool NFT\",\n            \"image\": open(\"path/to/file.jpg\", \"rb\"),\n        }),\n        100\n    ),\n    EditionMetadataInput(\n        NFTMetadataInput.from_json({\n            \"name\": \"Cooler NFT\",\n            \"description\": \"This is a cooler NFT\",\n            \"image\": open(\"path/to/file.jpg\", \"rb\"),\n        }),\n        100\n    )\n]\n\n# You can pass in any address here to mint the NFT to\ntxs = contract.erc1155.mint_batch_to(\"{{wallet_address}}\", metadatas_with_supply)\nreceipt = txs[0].receipt\ntoken_id = txs[0].id\nnft = txs[0].data()"
            },
            "reference": {
                "python": "https://docs.thirdweb.com/python/erc1155#mint_batch_to"
            }
        }
    ]
}