Skip to content

jackmercy/Votereum-AS

Repository files navigation

Node.js

Votereum: An Ethereum-based E-voting system

Blockchain, which is the underlying technology of the first cryptocurrency Bitcoin, has drawn a lot of global attention in recent years. Its notable characteristics of distributed ledger, trustless system and immutability not only makes it a disruptive innovation in the electronic payment industry but also potential solutions for other areas that required trust establishment. An electronic voting (E-voting) scheme is a use-case where all attributes of blockchain can offer a mechanism for an open, fair and universal verifiable electoral process. We propose Votereum, an E-voting system that utilizes the blockchain technology. The proposed system is empowered by Ethereum platform, including one server manages the entire system and the other handles all blockchain-related requests. The implementation is also deployed to Rinkeby testing network for evaluation on the feasibility.


Authors


FOSSA Status

Requirement

Install


AS server

Development

  • Run mongod
  • RabbitMQ service is running
  • Run npm start dev to run AS server. => Express server will run at localhost:5000

Production

  • RabbitMQ service is running
  • Run npm start prod to run AS server. => Express server will run at {Your VM IP}:5000

Debug


Angular UI

Development

Production

  • Run npm run ui-prod
  • Mapping your VM ip to port 8080
  • Open browser, navigate to {Your VM IP:8080}

Code scaffolding

Run ng generate component component-name to generate a new component. You can also use ng generate directive|pipe|service|class|guard|interface|enum|module.

Build

Run ng build to build the project. The build artifacts will be stored in the dist/ directory.

Further help

To get more help on the Angular CLI use ng help or go check out the Angular CLI README.