Skip to content

Commit

Permalink
connect to dchain
Browse files Browse the repository at this point in the history
  • Loading branch information
degenbuilder7 committed Jul 4, 2024
1 parent 7851749 commit 65f3683
Show file tree
Hide file tree
Showing 3 changed files with 87 additions and 1 deletion.
Binary file added components/gamedev/dchain.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
57 changes: 57 additions & 0 deletions config/wallet.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
import { Chain, configureChains, mainnet } from 'wagmi';
import { CoinbaseWalletConnector } from 'wagmi/connectors/coinbaseWallet';
import { InjectedConnector } from 'wagmi/connectors/injected';
import { MetaMaskConnector } from 'wagmi/connectors/metaMask';
import { publicProvider } from 'wagmi/providers/public';

import { NETWORK_NAME, RPC_URL, CHAIN_ID, BLOCK_EXPLORER_URL, ICON } from './env';

const dchaintestnet: Chain = {
id: CHAIN_ID,
name: NETWORK_NAME,
network: 'dchain_testnet',
rpcUrls: {
default: {
http: [RPC_URL],
},
public: {
http: [RPC_URL],
},
},
nativeCurrency: {
name: 'ETH',
symbol: 'ETH',
decimals: 18,
},
blockExplorers: {
default: { name: 'DChain Block Explorer', url: BLOCK_EXPLORER_URL },
},
};

const { chains, publicClient, webSocketPublicClient } = configureChains(
[
{
...dchaintestnet,
iconUrl: ICON,
},
mainnet,
],
[publicProvider()],
);

const coinbaseWalletConnector = new CoinbaseWalletConnector({ chains, options: { appName: 'wagmi' } });
const metaMaskWalletConnector = new MetaMaskConnector({ chains });

const trustWalletConnector = new InjectedConnector({
chains,
options: {
name: 'GN',
shimDisconnect: true,
getProvider: () => (typeof window !== 'undefined' ? (window as any).trustwallet : undefined),
},
});


export {
chains, coinbaseWalletConnector, metaMaskWalletConnector, publicClient, trustWalletConnector, webSocketPublicClient
};
31 changes: 30 additions & 1 deletion pages/_app.tsx
Original file line number Diff line number Diff line change
@@ -1,6 +1,35 @@
import "@/styles/globals.css";
import type { AppProps } from "next/app";
import { WagmiConfig, createConfig } from 'wagmi'
import { RainbowKitProvider, connectorsForWallets, getDefaultWallets } from '@rainbow-me/rainbowkit'
import { chains, publicClient, webSocketPublicClient } from '../config/wallet'

export default function App({ Component, pageProps }: AppProps) {
return <Component {...pageProps} />;

const projectId = '8db95bf7ae240481064a721e411c1161';

const { wallets } = getDefaultWallets({
projectId,
appName: 'dchain-game-dev',
chains,
});

const connectors = connectorsForWallets([
...wallets,
]);

const wagmiConfig = createConfig({
autoConnect: true,
connectors,
webSocketPublicClient,
publicClient,
});

return (
<WagmiConfig config={wagmiConfig}>
<RainbowKitProvider modalSize="compact" chains={chains}>
<Component {...pageProps} />
</RainbowKitProvider>
</WagmiConfig>
);
}

0 comments on commit 65f3683

Please sign in to comment.