nanovault
nanovault copied to clipboard
Open source wallet for using the Nano cryptocurrency
NanoVault
NanoVault is a fully client-side signing wallet for sending and receiving Nano on your desktop or in your browser
Table of Contents
- Install
- Bugs/Feedback
- Application Structure
- Development Prerequisites
- Development Guide
- Acknowledgements
Install NanoVault
NanoVault is available on your desktop (Windows/Mac/Linux) - just head over to the releases section and download the latest version for your OS.
You can also use NanoVault from any device on the web at nanovault.io
Bugs/Feedback
If you run into any issues, please use the GitHub Issue Tracker or head over to our Discord Server!
We are continually improving and adding new features based on the feedback you provide, so please let your opinions be known!
To get an idea of some of the things that are planned for the near future, check out the Road Map.
Everything below is only for contributing to the development of NanoVault
To download NanoVault go to the releases section, or use the web wallet at nanovault.io
Application Structure
The application is broken into a few separate pieces:
- NanoVault - The main wallet application (UI + Seed Generation/Block Signing/Etc).
- NanoVault-Server - Serves the Wallet UI and brokers public communication between the wallet and the Nano Node.
- NanoVault-WS - Websocket server that receives new blocks from the Nano node and sends them in real time to the wallet ui.
Development Prerequisites
- Node Package Manager: Install NPM
- Angular CLI:
npm install -g @angular/cli
Development Guide
Clone repository and install dependencies
git clone https://github.com/cronoh/nanovault
cd nanovault
npm install
Run the wallet in dev mode
npm run wallet:dev
Build Wallet (For Production)
Build a production version of the wallet for web:
npm run wallet:build
Build a production version of the wallet for desktop: (Required for all desktop builds)
npm run wallet:build-desktop
Desktop Builds
All desktop builds require that you have built a desktop version of the wallet before running!
Run the desktop wallet in dev mode:
npm run desktop:dev
Build the desktop wallet for your local OS (Will be in dist-desktop
):
npm run desktop:local
Build the desktop wallet for Windows+Mac+Linux (May require dependencies for your OS View them here):
npm run desktop:full
Running unit tests
Run ng test
to execute the unit tests via Karma.
Running end-to-end tests
Run ng e2e
to execute the end-to-end tests via Protractor.
Acknowledgements
Special thanks to the following!
- numtel/nano-webgl-pow - WebGL PoW Implementation
- jaimehgb/RaiBlocksWebAssemblyPoW - CPU PoW Implementation
- dcposch/blakejs - Blake2b Implementation
- dchest/tweetnacl-js - Cryptography Implementation
If you have found NanoVault useful and are feeling generous, you can donate at xrb_318syypnqcgdouy3p3ekckwmnmmyk5z3dpyq48phzndrmmspyqdqjymoo8hj