Reown AppKit

repository·main·Indexed 26 days ago

https://github.com/reown-com/appkit

A comprehensive full-stack toolkit for building onchain application UX. AppKit provides features including embedded wallets (social/email), crypto swaps, on-ramps, smart accounts, and sponsored transactions. It is chain-agnostic with support for EVM, Solana, Bitcoin, and TON, offering specialized SDKs for Web (React, Next, Vue, Nuxt, Svelte, Vanilla JS) and Mobile/Cross-Platform (React Native, Flutter, Android, iOS, Unity).

Tokens
39.6K
Snippets
79
Records
335
Agent score
90%

What's inside AppKit

  1. Overview of AppKit Experimental

    main

    The @reown/appkit-experimental package is a testing ground for cutting-edge Web3 features. It includes:

    • Experimental Features: Innovative concepts that may undergo significant changes.
    • EIP Implementations: Implementations of non-finalized Ethereum Improvement Proposals (EIPs).
    • Ecosystem Exploration: Functionalities that are not yet widely adopted in the broader Web3 ecosystem.
  2. Overview of AppKit

    main
    AppKit is a full-stack toolkit designed to build onchain application user experiences (UX). It provides tools to onboard users via social and email embedded wallets, web3 wallet login, crypto swaps, and on-ramps. It is chain-agnostic and supports EVM Chains, Solana, and Bitcoin.
  3. AppKit Features

    main

    AppKit provides several core features for onchain applications:

    • Swaps: Integrated crypto swapping.
    • On-Ramp: Fiat-to-crypto on-ramping capabilities.
    • Multi Chain & Multi Wallets: Support for various networks and wallet providers.
    • Smart Accounts: Support for account abstraction/smart accounts.
    • Telegram Mini Apps: Integration for Telegram-based applications.
    • Sponsored Transactions: Ability to pay for user gas fees.
    • Supported Networks: EVM Chains, Solana, and Bitcoin.
    • Authentication: Email & Social Login, One-Click Auth, and Sign with X (SIWX).
  4. Simulate a payment session via URL parameters

    main

    You can initiate a test payment by navigating to the application with specific URL parameters. This allows you to validate payment flows, asset parsing, and recipient validation.

    Required Parameter

    • sessionId: A unique identifier for the payment session.

    Optional Parameters

    • asset: Asset identifier using the format namespace:chainId/standard:address (e.g., eip155:1/erc20:0x123).
    • amount: Payment amount in token units (e.g., 1000000000000000000 for 1 ETH).
    • recipient: The destination wallet address.

    Example URL

    http://localhost:4001?sessionId=your-session-id&asset=eip155:1/erc20:0x123&amount=100&recipient=0xabc123
    http://localhost:4001?sessionId=your-session-id&asset=eip155:1/erc20:0x123&amount=100&recipient=0xabc123
  5. Run the AppKit Codemod via predefined scripts

    main

    If you are working within the root of the AppKit monorepo, you can use predefined pnpm scripts to perform common updates. For example, the codemod:wc script is available to upgrade all @walletconnect/* dependencies automatically.

    pnpm codemod:wc
  6. Check bundle sizes locally

    main

    To check the gzipped bundle sizes of the packages in this repository, you must first build the packages. You can then run the size check or view a detailed breakdown of bundle contents using the provided pnpm commands.

    # Build packages first
    pnpm build
    
    # Check bundle sizes
    pnpm size
    
    # See detailed breakdown of what's in a bundle
    pnpm size:why
  7. Run the AppKit Demo development server

    main

    To start the AppKit demo project locally, use your preferred package manager to run the development script. The project is built with Next.js and will be available at http://localhost:3000 by default.

    npm run dev
    # or
    yarn dev
    # or
    pnpm dev
    # or
    bun dev