Skip to content

vansh106/JamWallet_final

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

JamWallet

JAMWallet is an ethereum-based wallet with its own cryptocurrency - JAMCoin and an inbuilt nominee selection functionality to ease recovery of assets which may get trapped in a wallet due to loss of the Private Key.

Features

👛 Easy to use crypto wallet
💵 Easy and secure transactions
🧑‍🤝‍🧑 Nominee Selection System for asset recovery
🪙 JamCoin - a new cryptocurrency - can be purchased with Ether

How the Nominee Selection System Works

  • The JAMWallet essentially allows every user to set up a nominee (back-up) account for himself along with a specified time period which measures the user's inactivity duration.
  • In case of a prolonged period of inactivity of the main account, the Smart Contract assumes that the owner of the main account has lost access to his/her private key.
  • This is where the account recovery functionality kicks in. Once the user's inactivity period exceed the time-limit set by the user, the user gets the option to transfer all the JAMCoins in his JAMWallet to the chosen nominee's account.
  • This can be accomplished easily by calling the burn function from the nominee's account. NOTE: The burn function can only be called by the chosen account's nominee and is only functional after the set timeperiod expires.

Application Components

The application contains the following folders:

  • The Node Modules
  • Public Folder: This folder cointains all files that are intended to be sent to the client server. This includes HTML files, CSS files, images and logos.
  • Contracts Folder: This folder contains our solidity code which deploys the Smart Contract that governs the application.
  • App.js
  • Index.html
  • .gitignore: Contains all the information that has not been pushed to the GitHub repository.
  • package.json

Prerequisites

Technologies and Languages

Ganache and Metamask

It is imperative that you have Ganache Provider installed on your system before using this application. Also, connect your metamask to your Ganache accounts to smoothly simulate the blockchain network. Refer to the following site if you have trouble connecting these 2 applications: How to Set-up Ganache with Metamask

Downloading and Running the JAMWallet Project

  1. Once you have your NodeJS installed, download the github repository. This can be done by running the following commands in your VSCode terminal or Hyper.
git init
git clone https://github.com/vansh106/JamWallet.git
  1. Once the github repository has been cloned to your local system, you must install all the node modules and dependencies. This can be accomplished easily by running the following code in your terminal:
npm install
  1. Now, JAMWallet is ready to be deployed. Run the following command in your terminal.
node app.js
  1. Finally, open http://localhost:5000 through your web browser to view the application.

Other Stats

Contributors

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published