sorry, i am just beginner student studying fabric and . please, understand me, i do not use English well.. just i'm confused.. who is the application that was explained in http://hyperledger-fabric.readthedocs.io/en/latest/write_first_app.html?highlight=node.js%20SDK for? client or just for invoking Systematically?
if the application is for invoking, any language is okay for coding client-side application?
The Writing your first application tutorial in Hyperledger Fabric's documentation is oriented to the application developer. It specifically targets a developer leveraging the Hyperledger Fabric SDK for Node.js. There are other language-specific SDKs available (e.g. Java) and others in development (Go and Python). There is also a command-line capability to interact with a Hyperledger Fabric blockchain network.
Related
I'm developing a blockchain based system to provide energy certificates handled as tokens in hyperledger fabric. I've been doing some research but found no state of art on how to do this. If anyone can provide a useful link on how to bring this use case into hyperledger fabric tokens, I would be grateful. Also, I don't really know how to include the fabtoken functionality in an already deployed blockchain network. Any links or tips on how to start investigating for this will be welcome.
fabtoken was included in the fabric v2.0 alpha, but was reverted from git due to several issues. In other words, it is a method that is no longer supported.
Currently, fabric provides an example implemented in chaincode as a related token. See the link below.
fabric-samples/token-utxo
fabric-samples/token-erc-20
fabric-samples/token-erc-721
Is it alright to use hyperledger composer for a professional project? Since its depreciated.
I have need to solve a problem which can be solved easily with hyperledger composer. My main question is Is it wise to use composer after its been depreciated. Will there be any deployment Issue or anything while im carrying out this project?
I would highly advise you not to try to use hyperledger composer. It is end of life and the community has moved on, all that is left is the source code. The fabric client sdks and the new programming models on the chaincode side provide a much richer experience now and that is where you should focus your efforts.
For my Hyperledger Business Network, have defined all my network objects (Enums, Assets, Participants, Transactions, Events etc) in a Composer CTO Model file. I also use the Concept, Abstract and Relationship (-->) features as well in the cto file.
Is there an equivalent of CTO model file in the new development model in HL 1.4 without Composer. If not what's the best way to achieve the same as a model CTO file?
As per my understanding, There is no alternative the same as the CTO file. Hyperledger Composer follows a Modeling language for the asset, participants creation.
Hyperledger Fabric supports Smart Contact development in general-purpose programming languages, such as JavaScript, Java, Go, and Node.js.
If you are a beginner in Hypelredger fabric development then you have first cleared the concept of the orderer, peer, CA, and organization concept. And then first you have to start IBM Blockchain Platform VS Code extension for fabric. It will provide a local fabric environment to create, test and deploy a fabric smart contract. Also generate 1 peer, 1 orderer, 1 CA service under VS code environment.
Here is a link to start development with VS code extension. So using VS Code extension you can create a transaction for asset and participate creation.
Hope it will help you :)
Thanks for the info Isha. I had already come across the IBM extension and various examples in the fabric-samples suite and creation of main objects ( assets) via Transactions.
I was more wondering on best ( and fast/less code) way to implement other CTO features like Concept, Abstract and Relationship (-->). But looks like there isn’t.
I have previous experience in using Ethereum and Solidity, but now I want to try writing smart contracts for Hyperledger.
I have few considerations:
First one is regarding supported databases. According to their documentation (http://hyperledger-fabric.readthedocs.io/en/latest/ledger.html) they use LevelDB for storing contract data and CouchDB support is still in beta. Does anyone have any experience using CouchDB in Hyperledger?
Second, I see that Go is mostly used for the specification of smart contracts, but they have support for Java too. Is Java still in beta too, and is there support for any other programming language?
Also, what operating system do you suggest for production server running Hyperledger?
Thank you for the answers.
Is Java still in beta too, and is there support for any other
programming language?
Hyperledger V1.0 doesn't support Java Chaincode.
There will be support for it in the future.
You can ask around in https://chat.hyperledger.org/channel/fabric for ETAs.
There is also a work in progress to have node.js support.
Also, what operating system do you suggest for production server
running Hyperledger?
Ubuntu 16.04 LTS works well
Does anyone have any experience using CouchDB in Hyperledger?
Yes, CouchDB works well if your data is modeled as JSON and you would like to query the content of the data. The default goleveldb state database only supports key-based queries.
You should take a look at Hyperleger Composer that helps you create blockchain applications on Hyperledger Fabric quite easy. (It works better with Ubuntu).
It has is own Modeling Language.
Hyperledger initially was build using Go language.
the aim of the hyperledger team is to support as many languages as possible. currently the hyperledger composer( tool for developing blockchain application) supports javascript for defining the assets, transactions and chaincode.
the transactions log, state data and backed by Level DB and Couch DB
Note :
LevelDB and CouchDB are fully integrated in fabric framework,
currently you can't replace them with other database
Chaincode runs in a secured Docker container, the chaincode (aka smart-contract)can be programmed in Go,Node,Java currently Go is stable and fully supported language.
considering the operating system i have tested the fabric network running on Microsoft Azure platform where created a image of ubuntu 16.04 and installed Fabric framework.till now got no issue on it.
Made a research before asking this but I couldn't really understand much of differences between what I'm asking above. In-depth information would be much appreciated. Thanks in advance.
API - a set of functions and structures (classes?) for performing a selected task (e.g. libcurl API for network requests)
A Framework is something you can build upon. Usually it is complete (or almost complete) to a point it can be started out of the box (but probably would`nt do anything useful) and provides APIs to override some functionality
a toolkit is a set of utilities/tools you can use for some task (e.g. Kali Linux is a network penetration toolkit)
SDK (Software Developer`s Kit) is a toolkit (usually official) that can be used to interact with/program some device/entity. It also may provide APIs and frameworks internally. (e.g. Android SDK allows to develop, build, test and deploy applications for, well, Android. it describes APIs accessible from different OS versions. )
A toolkit is a set of utilities/tools you can use for some task (e.g. Kali Linux is a network penetration toolkit)