Playground

Onboard users to web3

Onboard anyone with flexible auth options, secure account recovery, and smart account integration.

Build your own Ecosystem

Build a public or permissioned ecosystem by allowing third party apps and games to connect to the same accounts.

import { ecosystemWallet } from "thirdweb/wallets";
import { ConnectEmbed } from "thirdweb/react";

const wallets = [
  // all settings are controlled in your dashboard
  // including permissions, auth options, etc.
  ecosystemWallet("ecosystem.your-ecosystem-name"),
];

function App() {
  return <ConnectEmbed client={client} wallets={wallets} />;
}

View Linked Profiles

View all web2 and web3 linked profiles for a user along with specific details for each profile type, including name, email, profile picture and more.

import { useProfiles } from "thirdweb/react";

function App() {
  const { data: profiles } = useProfiles({
    client,
  });

  return (
    <div>
      {profiles?.map((profile) => (
        <div key={profile.type}>
          <ProfileCard profile={profile} />
        </div>
      ))}
    </div>
  );
}

Login to see linked profiles

Link another profile

Link a web2 or web3 profile to the connected account.
You can do this with hooks like shown here or from the prebuilt connect UI.

import { useLinkProfile } from "thirdweb/react";

function App() {
  const {
    mutate: linkProfile,
    isPending,
    error,
  } = useLinkProfile();

  const linkMetamask = () => {
    // link any external wallet
    linkProfile({
      client: THIRDWEB_CLIENT,
      strategy: "wallet",
      wallet: createWallet("io.metamask"), // or any other wallet
      chain: baseSepolia,
    });
  };

  const linkPasskey = () => {
    // link any web2 identity provider
    linkProfile({
      client: THIRDWEB_CLIENT,
      strategy: "passkey", // or "email", "phone", etc.
      type: "sign-up",
    });
  };

  return (
    <div>
      <button onClick={linkMetamask}>Link Metamask</button>
      <button onClick={linkPasskey}>Link Passkey</button>
    </div>
  );
}

Login to link another account.