# Neptune Web Wallet A secure Electron-based desktop wallet for the Neptune blockchain network. ## 🚀 Features - 🔐 Secure keystore encryption (AES-256-GCM) - 💼 Create and recover wallets from seed phrases - 💸 Send and receive Neptune tokens - 📊 View transaction history and UTXOs - 🛡️ Enhanced security with strict Content Security Policy ## 📋 Prerequisites - Node.js >= 16 - npm or yarn ## 🔧 Installation Install dependencies: ```sh npm install ``` ## 💻 Development ### Start Electron app in development mode ```sh npm run start:electron ``` ### Start Vite dev server only ```sh npm run dev ``` ### Type-check ```sh npm run type-check ``` ### Lint with ESLint ```sh npm run lint ``` ### Format code with Prettier ```sh npm run format ``` ## 📦 Production Build ### Package the application ```sh npm run package:electron ``` ### Create distributables (installers) ```sh npm run make:electron ``` The installers will be generated in `out/make/` directory: - **Windows**: `.exe` installer in `out/make/squirrel.windows/x64/` - **macOS**: `.zip` in `out/make/zip/darwin/` - **Linux**: `.deb` and `.rpm` in respective directories ## 🔐 Security Features - ✅ Context isolation enabled - ✅ Node integration disabled - ✅ Sandbox enabled - ✅ Strict Content Security Policy in production - ✅ Certificate validation - ✅ Path traversal protection - ✅ Input validation for all IPC handlers - ✅ Secure keystore encryption with scrypt and AES-256-GCM ## 🌍 Environment Variables Create a `.env` file in the root directory: ```env # Neptune API URL VITE_APP_API= # Network (mainnet or testnet) VITE_NODE_NETWORK=mainnet ``` ## 🛠️ Tech Stack - **Framework**: Electron + Vue 3 + TypeScript - **Build Tool**: Vite - **State Management**: Pinia ## 📝 License Apache-2.0 ## 👥 Authors Neptune Team ## 🔗 Links - [Neptune Blockchain](https://neptune.cash) - [Documentation](#) - [Report Issues](#)