Optional: Official TomoEVMKit Docs

공식 Wagmi + TomoEVMKit 설치 문서를 확인하세요여기.

의존성 설치

npm install --save @story-protocol/core-sdk @tomo-inc/tomo-evm-kit wagmi viem @tanstack/react-query

설정

예제를 시작하기 전에 두 가지를 설정해야 합니다:

  1. 반드시NEXT_PUBLIC_RPC_PROVIDER_URL을 파일에 설정하세요..env 파일.
    • 공개 기본값을 사용할 수 있습니다 (https://aeneid.storyrpc.io) 또는 다른 RPC여기.
  2. 반드시NEXT_PUBLIC_TOMO_CLIENT_ID을 파일에 설정하세요..env 파일. 이를 위해Tomo 대시보드에 로그인하고 프로젝트를 생성하세요.
  3. 반드시NEXT_PUBLIC_WALLET_CONNECT_PROJECT_ID을 파일에 설정하세요..env 파일. 이를 위해Reown (이전 WalletConnect)에 로그인하고 프로젝트를 생성하세요.
"use client";
import '@tomo-inc/tomo-evm-kit/styles.css';
import { getDefaultConfig, TomoEVMKitProvider } from "@tomo-inc/tomo-evm-kit";
import { WagmiProvider } from "wagmi";
import { QueryClientProvider, QueryClient } from "@tanstack/react-query";
import { PropsWithChildren } from "react";
import { aeneid } from "@story-protocol/core-sdk";

const config = getDefaultConfig({
  appName: "Test Story App",
  clientId: process.env.NEXT_PUBLIC_TOMO_CLIENT_ID as string,
  projectId: process.env.NEXT_PUBLIC_WALLET_CONNECT_PROJECT_ID as string,
  chains: [aeneid],
  ssr: true, // If your dApp uses server side rendering (SSR)
});

const queryClient = new QueryClient();

export default function Web3Providers({ children }: PropsWithChildren) {
  return (
    <WagmiProvider config={config}>
      <QueryClientProvider client={queryClient}>
        <TomoEVMKitProvider>
          {children}
        </TomoEVMKitProvider>
      </QueryClientProvider>
    </WagmiProvider>
  );
}