Skip to content

mbvivek/DEAN-Stack

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

24 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

DEAN Stack

DEAN Stack is a blockchain enabled, Angular and NodeJS powered framework to build decentralized web-apps that includes uPort for identity management.

alt text

Architecture

Client

  • Angular
  • Uport-connect

Server

  • NodeJS
  • Ganache-cli (Testrpc for Ethereum)
  • Mongo DB
  • Uport-js

client and server interacts using REST APIs

This framework uses a number of open source projects to work properly:

Project Version
angular v5.2
uport-connect v0.7
bootstrap v4.1
jquery v3.3
node v8.11
web3 v1.0
uport v0.6
express v4.16
solc v0.4
mongoose v5.1

This framework requires the below projects to be already installed on the system

Project Version
angular-cli v1.7
npm v5.6
ganache-cli v6.1
mongodb v3.4

ganache-cli should be running before starting the server

mLab - Database-as-a-Service is used for MongoDB

Installation

Client

$ cd client
$ npm install
$ ng serve

** Only in case of QR Code not showing on login page or crypto.createHash() undefined error, please install the crypto-browserify module as a project dependency $ npm install crypto-browserify.

Server

$ cd server
$ npm install
$ node server

Enable Cross-Origin Resource Sharing (CORS) on your browser if you are running client and server on the same machine.

Client will run on localhost:4200, Server will run on localhost:3000

Working

Client

Built on Angular - a powerful front-end framework. At first user needs to use uport app and scan the QR code on the login screen to login.

After logging in, an example smart contract is written in solidity language. You can deploy a contract, fetch events from it, and update it.

Every result of an action will be logged in the logs.

Server

Built on NodeJS and Express framework. Server is connected to Ethereum test-rpc using web3 and connected to MongoDB using mongoose.

Client will interact with the server using REST APIs. The server, upon request from the client, deploys contract on the test-rpc, fetches events from a contract and updates a contract. An appropriate response is sent back to the client after serving the request.

Utilities

The framework has solidity compiler in-built and methods compile, deploy and interact with smart contracts. Means, no need to use any third-party apps such as remix to compile, deploy and interact with smart contracts.

About

DEAN-Stack is framework to build DApps using Ethereum blockchain with Angular and NodeJS

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors