All Projects → asc-lab → blockchain-multichain

asc-lab / blockchain-multichain

Licence: Apache-2.0 license
Application for proposals using blockchain with MultiChain.

Programming Languages

java
68154 projects - #9 most used programming language
typescript
32286 projects
HTML
75241 projects
shell
77523 projects
Dockerfile
14818 projects
CSS
56736 projects

Projects that are alternatives of or similar to blockchain-multichain

ex-bond-issuance
Reference DAML application demonstrating a bond issuance use case.
Stars: ✭ 16 (-11.11%)
Mutual labels:  dlt, distributed-ledger-technology
ex-healthcare-claims-processing
Reference DAML application demonstrating a healthcare use case.
Stars: ✭ 27 (+50%)
Mutual labels:  dlt, distributed-ledger-technology
indyscan
Hyperldger Indy Transaction Explorer
Stars: ✭ 52 (+188.89%)
Mutual labels:  distributed-ledger, dlt
obyte-hub
Hub for Obyte network
Stars: ✭ 17 (-5.56%)
Mutual labels:  dlt, distributed-ledger-technology
activeledger
Activeledger is a powerful distributed ledger technology.
Stars: ✭ 17 (-5.56%)
Mutual labels:  dlt, distributed-ledger-technology
iroha-ametsuchi
Flatbuffer database for the Hyperledger Iroha project.
Stars: ✭ 15 (-16.67%)
Mutual labels:  distributed-ledger, dlt
Corda
Corda is an open source blockchain project, designed for business from the start. Only Corda allows you to build interoperable blockchain networks that transact in strict privacy. Corda's smart contract technology allows businesses to transact directly, with value.
Stars: ✭ 3,776 (+20877.78%)
Mutual labels:  distributed-ledger, dlt
AuthGuard
Example repo for guarding routes post
Stars: ✭ 42 (+133.33%)
Mutual labels:  angular6
Ecommerce
Angular 6 Ecommerce Application POC
Stars: ✭ 46 (+155.56%)
Mutual labels:  angular6
disgo
Go Dispatch client
Stars: ✭ 30 (+66.67%)
Mutual labels:  dlt
ng-xform
esss.github.io/ng-xform/home
Stars: ✭ 18 (+0%)
Mutual labels:  angular6
meta-iota
OpenEmbedded layer for the IOTA Distributed Ledger
Stars: ✭ 41 (+127.78%)
Mutual labels:  distributed-ledger
angular-seat-charts
Angular Seat Charts Generator
Stars: ✭ 33 (+83.33%)
Mutual labels:  angular6
daml-on-fabric
Enabling DAML applications to run on Hyperledger Fabric
Stars: ✭ 23 (+27.78%)
Mutual labels:  dlt
composer-atom-plugin
⚠️ ⚠️ ⚠️ Hyperledger Composer has been deprecated ⚠️ ⚠️ ⚠️
Stars: ✭ 14 (-22.22%)
Mutual labels:  distributed-ledger
fabric-token-sdk
The Fabric Token SDK is a set of API and services that lets developers create token-based distributed application on Hyperledger Fabric.
Stars: ✭ 63 (+250%)
Mutual labels:  distributed-ledger
blockgeeks-build-blockchain-advanced
Code that shows how to build your own Bitcoin-like blockchain with JavaScript.
Stars: ✭ 24 (+33.33%)
Mutual labels:  blockchain-demo
iot-device-management
Leveraging Ethereum blockchain platform for identity, authentication and reputation of IoT devices
Stars: ✭ 84 (+366.67%)
Mutual labels:  distributed-ledger-technology
ng-walkthrough
A walkthrough for Angular
Stars: ✭ 21 (+16.67%)
Mutual labels:  angular6
nodejs-angular-starter
A starter template to work with on NodeJS (typescript), Angular (with SSR), and shared models.
Stars: ✭ 13 (-27.78%)
Mutual labels:  angular6

Private Blockchain (private DLT) using MultiChain

Application for proposals using blockchain with MultiChain.

Check out our blog if you want to learn more:

Architecture overview

MultiChain PoC Architecture

Repo info

  • multichain-app - Angular 6 client application
  • multichain-cli - example test scenario and execute this by MultiChain CLI
  • multichain-cluster - blockchain infrastructure
  • multichain-server - Java & Spring Boot & MultiChain Java API

Architecture

Our solution consists of 5 services:

  • multichain-master - multichain seed node
  • multichain-slave - multichain 2nd node
  • multichain-explorer - multichain 3rd node with UI for browsing blockchain
  • multichain-server - application backend (Spring Boot + in-memory database)
  • multichain-app - application frontend (Angular 6 served by nginx)

Use case

Your organization wants to implement an internal system for submitting different types of applications (for example: request for new equipment).
Each request must be approved by the manager.
Requests should be indisputable and immutable.

Example request and decision structure:

Request {userId, managerId, creationTime, requestContent}
Decision {managerId, Request, decisionResult, decisionTime}

JSON:

{
	"userId": "",
	"managerId": "",
	"creationTime": "",
	"requestContent": ""
}

{
	"managerId": "",
	"Request": {
            {
                "userId": "",
                "managerId": "",
                "creationTime": "",
                "requestContent": ""
            }
	},
	"decisionResult": "",
	"decisionTime": ""
}

Local development

Remember that MultiChainJavaAPI (using to connect with MultiChain) is not available in Maven Central Repository so you must build this library locally based on installation instruction in README.

Deployment & running

Each service is packaged as a separate container. To run whole system you can use docker + docker-compose.

Docker Compose

Prerequisites: local docker & docker-compose
To run application you simply execute command:

run.sh

Services are started with tty attached to current terminal.
To stop application just press:

Ctrl+C

Screens

Desktop main version

Mobile menu

Initial users

Request list

Decision list

DOCS

License

This project is released under the Apache 2.0 license (see LICENSE)

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].