Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/davidkhala/delphi-fabric
Focusing on study fabric capability
https://github.com/davidkhala/delphi-fabric
fabric fabric-sdk-java fabric-sdk-node hyperledger network-yaml
Last synced: 14 days ago
JSON representation
Focusing on study fabric capability
- Host: GitHub
- URL: https://github.com/davidkhala/delphi-fabric
- Owner: davidkhala
- License: apache-2.0
- Created: 2017-07-21T03:55:38.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2024-05-05T21:01:02.000Z (6 months ago)
- Last Synced: 2024-10-20T11:30:06.421Z (25 days ago)
- Topics: fabric, fabric-sdk-java, fabric-sdk-node, hyperledger, network-yaml
- Language: JavaScript
- Homepage:
- Size: 11.7 MB
- Stars: 23
- Watchers: 5
- Forks: 15
- Open Issues: 34
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Delphi-fabric
Delphi method is a structured, interactive forecasting communication technique which relies on a panel of experts.
This is why 'Delphi' here, instead of referring to a program language, or any failed project(s) from ASTRI.
This project aims to provide a user-friendly fabric application development toolset including
- fabric network simulation (alternative of **Build your first network**)
- chaincode lifecycle tools
- adopt stateless fashion when using multiple fabric-sdk, to power fabric *proxy server* second-development
- as a major integration testing environment for [fabric-common](https://github.com/davidkhala/fabric-common), which is
a pure helper to fabric-sdk user.## Why
- No multiple config file confusing anymore. All magic in `orgs.json` and `chaincode.json`
- no crypto-config.yaml
- no docker-compose.yaml
- auto-generated and managed configtx.yaml and genesis blocks for each channel.
- named docker volume to avoid infinite file path hell
- No need to copy and paste to have a proper connection profile from existing network. Now you are simulation your own network
- No need to global find all appearance of `org1` and replace it with `orgA`, organization names and mspid are put together
- Powered by our carefully tested cleaning-up process, it is impossible here forgetting to clean-up legacy configs after you restart your network.
- Production-ready and long run maintenance
- Perfect same crypto-material file structure as you use `cryptogen`. We have place fabric-ca response in good manner.## Features
- use fabric-ca to generate all crypto material, instead of cryptogen
- use config-less fabric-ca
- use `npm dockerode` to run docker container with comprehensive JSON configuration file, instead of `docker-compose` on yaml file
- JSON config cater for both application and network structure (superset of connection profile and network-yaml)
- channel update support
- chaincode language support
- nodeJS
- golang
- Fixed security leakage (wallet remaining) on development machine: priv-file, crypto-store in .hfc-key-store
- support hybrid data storage model (couchdb|leveldb), you could specify it for each peer
- update anchor peers as a normal channel config instead of using `configtx`
- use npm:js-yaml to read|write YAML files instead of jq### Major configuration
- we cluster network and channel config in ``config/orgs.json``, enjoy!
- chaincodes configurations: ``config/chaincode.json``
[sample chaincode source](https://github.com/davidkhala/chaincode)## Installation
**Installation Script**
1. `$ ./install.sh gitSync`
_after first time clone this repository, submodule should be initialize_
2. `$ ./install.sh`
### Requirements & dependencies**
- **Compatible OS**
- ubuntu Focal
- MacOS
- CentOS 9 Stream
- [Fabric](./common/README.md#Prerequisite)## Test on single host
-----------------------
- run `$ ./docker.sh` to restart network