Building a basic Ethereum self-custody wallet from scratcch without using existing wallet or transaction libraries. To demonstrate a deep understanding of Ethereum's core mechanics by implementing raw transaction construction, signing, and broadcasting using only cryptographic libraries.
This Ethereum-based wallet allows users to manage their funds by signing and sending raw transactions directly via RPC. All wallet functionalities, including account nonce management gas estimation, and raw transaction creation, are handled manually.
- Create a wallet from a 24-word seed phrase + password.
- Import wallet using seed phrase.
- Derive multiple addresses via indexed wallet creation (HD wallets).
- Manually construct and sign raw Ethereum transactions.
- Broadcast transaction using an RPC provider.
- Import and display ERC-20 tokens on the Sepolia network.
- Support more networks (currently only Sepolia).
- Send and manage ERC-20 tokens via smart contract interaction
- Implement token swap functionality between ERC-20 tokens.
- Display NFT holdings in the wallet.
- Refactor UI for a simpler, modern experience.
- Fix frontend rendering bugs.
- Introduce plugin wallet.
npm install
npm run dev