A Next.js Web3 app template.
pnpm i
Create a .env
file:
cp .env.example .env
Add your own keys in the .env
file (you can get it in your Reown dashboard), then:
pnpm dev
Change the app name and details in these files:
package.json # name, version, description
src/app/metadata.ts # title, description
src/context/index.tsx # metadata.name, metadata.description
src/components/Header.tsx # Heading text
export const metadata: Metadata = {
title: 'Your App Name',
description: 'Your app description',
openGraph: {
title: 'Your App Name',
description: 'Your app description',
images: ['/huangshan.png'], // Replace with your image
},
twitter: {
card: 'summary_large_image',
title: 'Your App Name',
description: 'Your app description',
},
}
Create a layout.tsx
in your page directory:
// src/app/your-page/layout.tsx
export const metadata: Metadata = {
title: 'Page Title | Your App Name',
description: 'Page specific description',
// ... openGraph and Twitter cards
}
Edit supported networks in src/context/index.tsx
:
networks: [
sepolia, // Default testnet
optimism,
base,
// Add or remove networks as needed
]
- Create an account at Reown Dashboard
- Create a new project
- Copy your Project ID
- Add to
.env
:
NEXT_PUBLIC_PROJECT_ID=your_project_id
- Create
.well-known/walletconnect.txt
in yourpublic
folder - Add your verification details from Reown dashboard
- Ensure it's accessible at:
your-domain/.well-known/walletconnect.txt
- Ethers.js
v6
- Ethereum library - Reown AppKit - Web3 authentication
- Chakra UI - UI components
- Next.js - React framework
Feel free to reach out to Julien on Farcaster, Element, Status, Telegram, Twitter, Discord, or LinkedIn.