Next.jsReactStarter

nextjs-privy-wallet-template — Next.js Starter Template

By an-ordinary-dev

A Web3 starter template built on the Next.js 15.3 App Router, integrating Privy login, Wagmi, and Viem, with default support for Ethereum mainnet, built with Tailwind CSS and TypeScript.

Explore the design

Compare the page layouts and mobile experience. Open any screenshot for a closer look.

2 previews
Desktop homepage1 / 2
Desktop captureTop of page

Actual screenshot captured by the server browser.

All pages & views 2

Screenshots show visual appearance; interactive behavior may differ.

Recorded 2026-10-14View source

What stands out

A quick read of the recorded project description.

01

Uses the Next.js 15.3 App Router to organize pages and routes

02

Supports both wallet connection and social login (Google, Twitter, Discord, etc.) through Privy

03

Integrates Wagmi and Viem for EVM chain interaction, with only Ethereum mainnet configured by default

04

Uses Tailwind CSS to build the interface, with dark mode enabled by default

05

Uses TypeScript to provide type safety

06

Provides basic components and configuration examples such as PrivyProvider and ConnectButton

Template Details

This template is aimed at developers who need to quickly set up a Web3 frontend interface. The README states that it is based on the Next.js 15.3 App Router structure, uses Privy to handle wallet connections and social login, uses Wagmi and Viem to provide Web3 hooks and utility functions, uses Tailwind CSS for styling, and uses TypeScript as the language. The default configuration supports Ethereum mainnet, and chain configuration is centralized in src/lib/wagmiConfig.ts. Other EVM chains can be added by importing from viem/chains and adding them to the chains array. Login methods are configured in src/lib/privy.ts and cover email, SMS, social login (Google, Twitter, Discord, etc.), and wallet connection. The project enables dark mode by default. The main interface is located at src/app/page.tsx, and the Privy connect button is located at src/components/ConnectButton.tsx. The README does not provide information about testing, performance, production deployment, or security audits.

Next.jsStarter

Is it right for your project?

Use Cases

  • Quickly setting up a Web3 frontend interface with wallet connection and social login
  • Integrating Privy as an authentication solution in a Next.js App Router project
  • Using Wagmi and Viem to configure EVM chains and connect Web3 hooks
  • Customizing a dark-themed Web3 application interface based on Tailwind CSS

Suitable For

  • Frontend developers familiar with Next.js and TypeScript
  • Web3 projects that need examples of Privy login and EVM chain interaction
  • Developers who want to use the template as a starting point to customize the UI and chain configuration

Getting started & customization

Use these recorded setup notes alongside the repository instructions for your chosen version.

  1. 1

    Create .env.local in the root directory and set NEXT_PUBLIC_PRIVY_APP_ID, with the value obtained from the Privy Console

  2. 2

    Configure allowed origin domains, OAuth providers, and wallet connection preferences in the Privy Console

  3. 3

    Install dependencies with npm install or yarn install, then run npm run dev or yarn dev to start the development server

  4. 4

    The default chain configuration is located in src/lib/wagmiConfig.ts. For other chains, import from viem/chains and add them to the chains array

  5. 5

    The README does not provide specific steps for production deployment, testing, or security audits

Read repository instructions

License & source material

Usage conditions & limitations

Free to use · keep license notice

This entry covers the free version under the MIT license in the public repository; the free scope is the code of this version and does not mean that external services or third-party assets are free.

Must comply with when using

  • Allows free use, modification, commercial use, and distribution of this version of the code.
  • When distributing copies or substantial portions of the code, retain the original author's copyright notice and the complete MIT license notice.
  • The code is provided as is; warranties and limitations of liability are governed by the original license and applicable law.

Additional costs & items to verify

  • Demo images, fonts, icons, and other third-party assets must be checked against their respective licenses and cannot be judged solely by the code's MIT license.
  • External services such as domains, hosting, databases, payments, or AI may incur additional charges.
  • Using this template requires registering a Privy account and obtaining an App ID, which must be configured in environment variables before it can run.
  • You need to create an account and a new project in the Privy Console to obtain the App ID.
  • You need to add your domain to the allowed origins in the Privy Console, otherwise login will not work properly.
  • Social login (Google, Twitter, etc.) requires configuring the corresponding OAuth providers yourself in the Privy Console.
View Original Text Basis

Permission is hereby granted, free of charge

Original License Text

# Get your Privy App ID from https://console.privy.io

Original README

1. Create an account at [Privy Console](https://console.privy.io)

Original README

- Add your domain to allowed origins

Original README

- Configure OAuth providers (Google, Twitter, etc.)

Original README
https://github.com/an-ordinary-dev/nextjs-privy-wallet-template/blob/main/LICENSEhttps://github.com/an-ordinary-dev/nextjs-privy-wallet-template/blob/main/README.md

Compiled by DeepSeek based on repository license and README ·2026-10-14. Results only cover the materials read; dependencies, images, fonts, and subsequent term changes are subject to their respective original texts.

Project checks & description sources

Template Information

Source platforms
GitHub
Documentation and maintenance reference score
Partly documented · 74 / 100
Technologies
Next.js · React
Website type
Starter
How this score is calculated

Our heuristic uses license records (up to 30), a demo link (12), a preview (10), stars (15), recorded maintenance (15), description completeness (8), feature records (5) and classification data (5). It is not a code, security or performance test, or a Google score. A link does not establish tested functionality.

What to verify for this project

Repository update recorded
2025-07-02
Screenshot last checked
2026-10-14

A demo link is listed. Check it with your own content and viewport sizes; its presence does not confirm that forms, authentication or payments work.

The catalog identifies Next.js as the primary stack. Check the actual dependency manifest and lockfile for versions and hosting requirements. These notes use recorded metadata, not a code audit or a deployment test.

Use a selection guide →

How this description was prepared

AI-assisted description based on catalog records and repository material. Repository authors are not automatically the reviewers of this description.

Review declaration: codex-user-requested-batch-review-20261015 · 2026-10-15

Inspect the recorded source material

SHA-256: 6704e706c178ef39bbb5a0bcab857f39607a0fe02dd31a321e82ed7d287b1592

2026-10-14T09:12:34.839Z

Source file / repository
# 🛡️ Next.js 15.3 + Privy Web3 Starter Template

A sleek starter template built with **Next.js 15.3**, **Privy** (for wallet & social login), **Wagmi**, **Tailwind CSS**, and **TypeScript** — ideal for modern Web3 dApps.

> 🔥 Perfect for wallet connection, social login, EVM chain support, and rapid UI customization.

## 🖼️ Preview

![Preview](public/preview.png)

---

## 🚀 Tech Stack

- **Next.js 15.3 (App Router)** - Latest Next.js with App Router
- **Privy** – Web3 authentication (wallet + social login)
- **Wagmi + Viem** – Web3 hooks and utilities
- **Tailwind CSS** – Utility-first styling
- **TypeScript** – For type safety

---

## 📂 File Structure

```
src/
├─ app/ → App Router structure
│  └─ page.tsx → Main UI page
├─ lib/
│  ├─ privy.ts → Privy configuration
│  └─ wagmiConfig.ts → Chain configuration
├─ components/ → UI components
│  └─ ConnectButton.tsx → Privy connect button
├─ providers/ → React context providers
│  └─ PrivyProvider.tsx → Privy provider setup
```

---

## 🔧 Configuration

### Environment Variables

Create a `.env.local` file in the root directory with the following:

```env
# Get your Privy App ID from https://console.privy.io
NEXT_PUBLIC_PRIVY_APP_ID=your-privy-app-id-here
```

### Privy Setup & Verification

1. Create an account at [Privy Console](https://console.privy.io)
2. Create a new project and get your App ID
3. Add your App ID to `.env.local`
4. Configure your project in Privy Console:
   - Add your domain to allowed origins
   - Configure OAuth providers (Google, Twitter, etc.)
   - Set up wallet connection preferences

### Supported Chains

The template supports Ethereum mainnet by default:

```ts
// src/lib/wagmiConfig.ts
import { mainnet } from 'viem/chains';
import { http } from 'wagmi';
import { createConfig } from '@privy-io/wagmi';

export const wagmiConfig = createConfig({
  chains: [mainnet],
  transports: {
    [mainnet.id]: http(),
  },
});
```

To add more chains, import them from 'viem/chains' and add them to the chains array.

### Login Methods

The template includes various login methods configured in `src/lib/privy.ts`:

- Email
- SMS
- Social (Google, Twitter, Discord, etc.)
- Wallet connection

---

## 💡 Features

- Wallet & social login via Privy
- Dark mode by default
- Clean, modern UI with Tailwind CSS
- Type-safe development with TypeScript
- Easy chain configuration
- Responsive design

---

## 📦 Getting Started

```bash
# Install dependencies
npm install
# or
yarn install

# Start development server
npm run dev
# or
yarn dev
```

Open [http://localhost:3000](http://localhost:3000) to view your app.

---

## 🔍 Customization

To start customizing:

1. Edit `/src/app/page.tsx` for main UI
2. Modify `/src/lib/privy.ts` for Privy configuration
3. Update `/src/lib/wagmiConfig.ts` for chain support
4. Add new components in `/src/components/`

---


Don't forget to 🌟 the repo if you found it useful!

---

## 📜 License

MIT — free to use and modify. 
Report a correction

Explore similar templates

Compare previews and descriptions within the same stack and category.