Skip to content

Commit

Permalink
init
Browse files Browse the repository at this point in the history
  • Loading branch information
esot321c committed Sep 12, 2024
1 parent 9a558a6 commit a584127
Show file tree
Hide file tree
Showing 10 changed files with 2,742 additions and 134 deletions.
2 changes: 2 additions & 0 deletions .env.example
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
NEXT_PUBLIC_WALLETCONNECT_PROJECT_ID="your_project_id"
NEXT_PUBLIC_SITE_URL="http://localhost:3000"
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -34,3 +34,5 @@ yarn-error.log*
# typescript
*.tsbuildinfo
next-env.d.ts

.env
42 changes: 11 additions & 31 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,36 +1,16 @@
This is a [Next.js](https://nextjs.org) project bootstrapped with [`create-next-app`](https://nextjs.org/docs/app/api-reference/cli/create-next-app).
# EVM MultiSender

## Getting Started

First, run the development server:

```bash
npm run dev
# or
yarn dev
# or
pnpm dev
# or
bun dev
```

Open [http://localhost:3000](http://localhost:3000) with your browser to see the result.

You can start editing the page by modifying `app/page.tsx`. The page auto-updates as you edit the file.
This is an app that sends Ethereum and ERC-20 tokens to multipe recipients from a single wallet. The current implementation will require you to sign the transactions for each recipient, one by one. This is not idea for large airdrops but not bad for a smaller number of recipients. Future iterations will include a multisender smart contract so you only need to sign once.

This project uses [`next/font`](https://nextjs.org/docs/app/building-your-application/optimizing/fonts) to automatically optimize and load [Geist](https://vercel.com/font), a new font family for Vercel.

## Learn More

To learn more about Next.js, take a look at the following resources:

- [Next.js Documentation](https://nextjs.org/docs) - learn about Next.js features and API.
- [Learn Next.js](https://nextjs.org/learn) - an interactive Next.js tutorial.

You can check out [the Next.js GitHub repository](https://github.com/vercel/next.js) - your feedback and contributions are welcome!
## Getting Started

## Deploy on Vercel
1. Copy `.env.example` file and rename it to `.env`
2. Create a Wallet Connect project ID at https://cloud.walletconnect.com/sign-up and add it to the `.env` file for `NEXT_PUBLIC_WALLETCONNECT_PROJECT_ID`
3. Run `pnpm install`
4. Run the app with `pnpm dev` locally, or deploy to Vercel.
5. If running locally, navigate to `http://localhost:3000`
6. Connect your wallet and add recipients using the buttons or by uploading a .csv file.

The easiest way to deploy your Next.js app is to use the [Vercel Platform](https://vercel.com/new?utm_medium=default-template&filter=next.js&utm_source=create-next-app&utm_campaign=create-next-app-readme) from the creators of Next.js.
## Adding other chains

Check out our [Next.js deployment documentation](https://nextjs.org/docs/app/building-your-application/deploying) for more details.
To add other blockchains besdies Base and Ethereum, you need to add the relevant data to `/lib/constants/evm.ts` and then import that data into `components/MultiSender.tsx` properly.
13 changes: 8 additions & 5 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -9,18 +9,21 @@
"lint": "next lint"
},
"dependencies": {
"@web3modal/ethers": "^5.1.7",
"ethers": "^6.13.2",
"next": "14.2.10",
"react": "^18",
"react-dom": "^18",
"next": "14.2.10"
"react-dom": "^18"
},
"devDependencies": {
"typescript": "^5",
"@types/node": "^20",
"@types/react": "^18",
"@types/react-dom": "^18",
"eslint": "^8",
"eslint-config-next": "14.2.10",
"pino-pretty": "^11.2.2",
"postcss": "^8",
"tailwindcss": "^3.4.1",
"eslint": "^8",
"eslint-config-next": "14.2.10"
"typescript": "^5"
}
}
Loading

0 comments on commit a584127

Please sign in to comment.