Welcome to the W-Link Key Generator! This web application allows users to generate, encrypt, and manage Solana and Ethereum wallet keys securely.
You can access the live version of the application here: W-Link Key Generator
When you visit the website for the first time it will through a prompt at you saying. No Password found. Please set a new password
Just set the password and you are in!
for visiting the second time just putup your set pin.
Generate your wallets and you can send or recieve transactions easily by clicking on the send button
Your wallet always shows the real time data to you with the details of transaction.
To see the transaction details just click on the bank icon
Scroll the modal to see other details like Amount Transferred
, Sender ID
, Recipient ID
.
- Generate Solana and Ethereum Wallets: Easily create new Solana or Ethereum wallet with a single click.
- Encrypt Private Keys: Securely encrypt your private keys with a password.
- Backup and Restore Wallets: Download encrypted backups of your wallets and restore them when needed.
- Manage Multiple Wallets: Store and manage multiple Solana and Ethereum wallets locally in your browser.
- Frontend: React.js, Next.js
- Styling: TailwindCSS
- Animations: Framer Motion
- Cryptography:
@noble/ed25519
,crypto
,aes-js
- Icons: Lucide React
To get started with the project locally, follow these steps:
Make sure you have the following installed:
- Node.js (v14 or higher)
- npm or yarn
-
Clone the repository:
git clone https://github.com/your-username/w-link-key-generator.git cd w-link-key-generator
-
Install dependencies:
npm install # or yarn install
-
Create a
.env
file in the root directory and add the following environment variable:ALCHEMY_API_KEY=your_alchemy_api_key
-
Start the development server:
npm run dev # or yarn dev
-
Open your browser and navigate to
http://localhost:3000
to view the application.
- Navigate to the "Solana Wallet" or "Ethereum Wallet" section.
- Put up the mnemonic pharase or leave it blank, put the wallet name(required).
- Click the "Generate" button to create a new wallet.
- The generated wallet details, including the public key and encrypted private key, will be displayed.
- Go back to wallets section and your newly generated wallet will be there.
- After generating a wallet, you can encrypt the private key using a password.
- The encrypted key is stored in the browser's local storage for secure access.
- Backup: Click the "Backup" button to download a JSON file containing all your encrypted wallet data.
- Restore: Upload a previously downloaded backup file to restore your wallets.
The project follows a typical Next.js structure:
.
├── src/
│ ├── app/
│ │ ├── api/
│ │ │ └── fetchBalance/route.js
│ │ ├── components/
│ │ ├── pages/
│ │ ├── styles/
│ │ └── utils/
├── public/
├── .env
├── .gitignore
├── package.json
└── README.md
Contributions are welcome! If you'd like to contribute to this project, please follow these steps:
- Fork the repository.
- Create a new branch:
git checkout -b feature/your-feature-name
. - Make your changes and commit them:
git commit -m 'Add some feature'
. - Push to the branch:
git push origin feature/your-feature-name
. - Open a pull request.
This project is licensed under the MIT License.