This project is a crypto wallet built specifically for the Internet Computer (ICP) blockchain, designed as a convenient browser extension.
Benefits to community:
- Open source
- Fast
- Clean
- No tracking
- Pure WEB3 experience / backendless
Benefits to my other projects:
- Will work with the tool Metaviz to visialize several things on a diagram
- I can promote my ICRC-2 token for Pixelpunk game
- also Pixelpunk has ICRC-37 NFTs collecions which is not supported by any wallet yet
- I need wallet authentication for both Metaviz & Pixelpunk, because customers from other blockchain are got used to it (e.g. like Phantom wallet on Solana) they don't get what is Internet Identity.
Here is summary of a discussion about implementing it with Juno creator (and why it's not possible in current wallets): https://github.com/junobuild/juno-js/issues/154#issuecomment-2126964720
Project plan:
1. One week before hackaton:
- Create logo and "credit card" background
- Design UI
2. Hackaton
Implement simplest useful wallet functionality as possible.
- Chrome only
- Password (secure method PBKDF2)
- Create ICP wallet and show 12-word recovery phrase
- Import ICP wallet from 12-word recovery phrase
- Secure method for storing private key (AES-GCM)
- Send ICP to other wallet
- Receive page with QR and copy button
- Placeholder for Swap (redirecting to popular swap site)
- Placeholder for Fiat (redirecting to popular fiat site)
- Show in ICP dashboard
- Delete account
3. Non-distant future (other wallets already have it)
- Contacts list
- Display fees
- Other browsers (personally I'm missing Safari wallet)
- ICRC tokens
- NFTs (other wallets doesn't supprt ICRC-7/37 yet)
- Mobile app
- Transaction history inside plugin window not just a link to dashboard
- Swap inside plugin window using third-party API
- Fiat exchange inside plugin window using third-party API
- Send to Principal ID or Account ID (autodetect) but display Account ID mainly
- Incognito mode
- Describe Third-party developer API / button code / backend examples
- Publish in Chrome Store / other marketplaces
- Unittests
4. Future (unique features that other wallets do not have)
- Organize wallets in groups with sorting and collapsing
- Import 24-word phrases, PEM keys, private keys
- Signing anything (for exaple to login into dapp)
- Login to wallet using fingerprint
- Login using camera
- Cloud migration/backup
- Open prepared link to Metaviz tool that visualizes choosen transfers as a diagram
5. Distant future (real goal of building an app)
- Integrate inside plugin methods of earning like staking, liquidity pools etc. which will be main application use - the whole idea behind the app is to grind every day
- Dumbphone version - engage developing countries