thirdweb TypeScript SDK

repository·main·Indexed 20 days ago

https://github.com/thirdweb-dev/js

An all-in-one TypeScript SDK for Browser, Node, and Mobile applications designed to simplify web3 development. It provides tools for contract interaction, in-app wallets, account abstraction, and managed infrastructure. The repository also includes the @thirdweb-dev/ai-sdk-provider for integrating blockchain-specific tools and chat capabilities with the Vercel AI SDK.

Tokens
342.2K
Snippets
987
Records
1.7K
Agent score
65%

What's inside @thirdweb-dev/js

  1. Overview of Unreal Engine SDK features

    main

    The Unreal Engine SDK is a code plugin designed to enable developers to integrate thirdweb In-App, Ecosystem, and Smart Wallets into games and applications.

    Key capabilities include:

    • In-App Wallets: Create and login to persistent, cross-platform, signless embedded wallets using email or social authentication.
    • Account Abstraction & Smart Wallets: Upgrade wallets to Smart Wallets to enable gas sponsorship and use Session Keys to grant scoped access to a backend (such as thirdweb Engine) without requiring manual user signatures.
    • High Performance: The core logic is built in Rust for speed and minimal project clutter.
    • Compatibility: Supports Unreal Engine versions 5.3 through 5.5.
  2. Overview of Unity SDK capabilities

    main

    The Unity SDK is designed for building cross-platform games on any EVM blockchain. It provides built-in support for:

    • Wallet Connectivity: Connect to users' wallets.
    • Smart Contract Interaction: Interact with contracts, sign messages, and use standards like tokens and NFTs.
    • Infrastructure: Built-in RPC URLs, IPFS gateways, and Account Abstraction.
    • Marketplaces: Support for common marketplace standards.
  3. Overview of Transactions (formerly Engine)

    main

    Transactions is an open-source backend server designed to read, write, and deploy smart contracts at production scale via simple API endpoints. It abstracts blockchain complexity, allowing developers to manage transactions without manually handling nonces, gas settings, or RPC errors.

    Key capabilities include:

    • Concurrent Transactions: Send multiple transactions simultaneously with automatic nonce management.
    • Reliability: Automatically resubmits stuck transactions and handles gas/RPC errors.
    • Wallet Management: Manage server wallets and funds seamlessly.
    • Access Control: Use access tokens with specific permission scopes to control wallet access.
    • Gas Abstraction: Sponsor gas fees using built-in relayers and session keys.
    • Programmatic Deployment: Deploy smart accounts, tokens, NFTs, and marketplaces.
    • Observability: Debug failures with detailed timelines and onchain error data.
  4. Overview of Service Utils

    main

    The service-utils package provides specialized utility modules designed to handle common requirements across different thirdweb service environments. The package is organized into three distinct directories based on the deployment target:

    • /core: General-purpose utilities intended for use in any service environment.
    • /cf-worker: Specialized utilities designed specifically for use within Cloudflare Worker services.
    • /node: Utilities optimized for use in self-hosted Node.js services.
  5. Overview of Transactions in thirdweb TypeScript SDK v5

    main

    Transactions are the primary mechanism for interacting with the blockchain using the thirdweb TypeScript SDK v5. Interaction is categorized into three main workflows:

    1. Reading State: Fetching data from the blockchain (e.g., reading contract variables or balances).
    2. Preparing Transactions: Constructing and configuring transaction objects before they are signed or sent.
    3. Sending Transactions: Executing transactions by signing them with a wallet and broadcasting them to the network.
  6. Overview of thirdweb SDK features

    main

    The thirdweb SDK is an all-in-one web3 SDK designed for Browser, Node, and Mobile applications. It provides a comprehensive set of features compared to other libraries like Wagmi, Viem, or Ethers@6, including:

    • Type-safe APIs: Full type safety for both Contract and Wallet APIs.
    • EVM & RPC: Support for EVM utilities and RPC for any EVM.
    • Automated Services: Automatic ABI resolution and IPFS upload/download.
    • Advanced Web3 Features: Embedded wallets (email/social login), Account Abstraction (ERC4337) support, and SIWE (Sign-In with Ethereum) authentication.
    • UI & Hooks: Built-in React and React Native hooks and UI components.
    • Wallet Management: Web3 wallet connectors and local wallet creation.
  7. Overview of the thirdweb TypeScript SDK

    main

    The thirdweb TypeScript SDK is a performant and lightweight library designed to interact with any EVM chain. It is compatible with Node.js, React, and React Native environments.

    Key Features

    • UI Components: React and React Native components for wallet connections and transactions.
    • In-app Wallets: Native support for email and social logins.
    • Account Abstraction: First-class support for ERC4337 smart accounts.
    • Type-safe Contract API: Fully typed interfaces using human-readable ABIs.
    • Code Generation: A CLI tool to generate highly optimized, type-safe contract interfaces.
    • EVM RPCs: High-performance RPC access for any chain using only a chain ID.
    • IPFS Integration: Simple tools for IPFS upload and download.
    • Auto ABI Resolution: Resolve ABIs for deployed contracts using only the contract address.
    • Interoperability: Adapters for ethers and viem libraries.
  8. Key features of thirdweb Pre-built Contracts

    main

    Thirdweb pre-built contracts offer the following features:

    • Increased security: Audited contracts with ongoing bug-bounty programs.
    • Retain ownership: All contracts are fully owned by the contract deployer.
    • Easily deployable: Deploy via UI, CLI, or programmatically.
    • Built with protocols: Use contracts published by various protocols.
    • Manage contracts: Use a custom interface post-deployment to interact with contracts.
    • Default library: All contracts are available with custom UIs and SDK functionality.