Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/drewcook/private-nft-transfer
https://github.com/drewcook/private-nft-transfer
Last synced: 5 days ago
JSON representation
- Host: GitHub
- URL: https://github.com/drewcook/private-nft-transfer
- Owner: drewcook
- Created: 2023-11-30T19:28:29.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2023-12-03T03:22:34.000Z (about 1 year ago)
- Last Synced: 2024-04-10T10:01:13.823Z (9 months ago)
- Language: TypeScript
- Homepage: https://private-nft-transfer.vercel.app
- Size: 174 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Nextjs Web3 Template
View an NFT being minted then privately transferred to a particular buyer [here](https://sepolia.etherscan.io/nft/0x531e468a8b41f76db4ce2a35e8e4dd7d4a9cd7c9/1).
View the [demo app](https://private-nft-transfer.vercel.app/).
This is a template for building a robust frontend application designed to interact with Ethereum-based smart contracts.
It uses the following features:
- Next 13
- React 18
- TypeScript
- Material UI
- Emotion
- Viem
- Wagmi
- WalletConnect v3
- Infura & Alchemy RPC Providers
- ESLint
- Prettier
- Commitlint
- Yarn
- Husky Git Hooks## Getting Started
### Prerequisites
This template relies on WalletConnect and an RPC provider to connect to Ethereum-compatible networks. Therefore, you must perform the following steps prior to running the app locally:
1. **WalletConnect Project ID** - Set up a new [WalletConnect Project](https://cloud.walletconnect.com/) to obtain the Project ID. Add it to `NEXT_PUBLIC_WALLETCONNECT_PROJECT_ID` in the `.env` file.
2. **Infura RPC API Key** - For a simple setup, create a new [Infura API Key](https://app.infura.io/dashboard), and add it to `NEXT_PUBLIC_INFURA_RPC_KEY` in the `.env` file.
3. **Alternate: Alchemy RPC API Key** - If you prefer to use Alchemy as an RPC provider instead of Infura, set up a new [Alchemy API Key](https://dashboard.alchemyapi.io/) for the network that you wish to use, and add it to `NEXT_PUBLIC_ALCHEMY_RPC_KEY` in the `.env` file.### Running the App Locally
1. Install dependencies: `yarn install`
2. Setup environment variables: `cp .env .env.local`
1. Update values with appropriate keys
2. Or, comment them out in `src/lib/wagmiConfig.ts`
3. Run development server: `yarn dev`
4. Open browser: `http://localhost:3000`
1. It will hot reload on each file save
5. Follow the steps this [README](./abis/README.md) to add contract ABIs and configurations for deployment addresses
6. Start editing: `src/app/page.tsx` to update the UI (visit the Dashboard page to mint an example NFT)