What is Forma and its concepts
Forma is what we call an infrastructure orchestrator.
Forma connects to multiple infrastructures (private or public clouds) and configures everything that you need to set up, operate, and destroy blockchain networks.
Anatomy of a network
The typical anatomy for each nodes environment includes a virtualization layer that Forma talks to, and on top of it, Forma controls everything for you. You never have to worry about how to set up the cryptography, how to connect to other clusters, or any complex blockchain infrastructure setting.
If you run a managed environment with us, you never have to deal with the infrastructure nor the Kubernetes layer.
Since Forma supports multiple blockchain protocols, we have our own set of shared concepts to refer to some parts of a blockchain network. If you are not familiar with Hyperledger Fabric (and don't want to) it's alright! With Forma don't have to be an expert in the Blockchain Protocol.
At the higher level, this is how concepts interact:
Here's the detailed explanation:
|Organization||An organization, also known as a Participant, is a company or institution with an account in Forma. It can create and join Networks, as well as take part of the decision taken regardings a Network operation.|
|Network|| A network is a primary concept in Forma. It's a group of Organizations working together to set up a shared data layer. By default, when you create a new Network, a default Ledger is created for all the participants of the network.
|Connection|| Organizations are individually managed, they can connect to multiple blockchain Networks. For Organizations to connect in a Network they need to be invited by somebody in the Network. In the upper menu, you can add new Connections or share your organization Id with another Organization to request to connect with you.
|Ledger|| A Ledger is the actual "blockchain". It can have smart contracts installed on it, as well it holds all data. A Network can have one or multiple Ledger to isolate data. Smart Contracts from on Ledger cannot access data from another Ledger.
In Hyperledger Fabric a Ledger is called a Channel.
|Smart Contract|| A Smart Contract is computing code running with the rules on how to access and modify data. Smart Contracts can be written in multiple programming languages. Check out Convector Smart Contracts to find out our Open Source way to build Enterprise Smart Contracts.
In Hyperledger Fabric a Smart Contract is a Chaincode.
|Service Accounts or Identities||Service Accounts or Identities are the way to authenticate and authorize access to Smart Contracts. In Enterprise blockchain networks, identities represent applications making calls to the Network on behalf of an user. These can be thought out like Wallets as well.|
|Nodes Environment||You may see in the application and in the docs that we refer to your "nodes environment" multiple times. A nodes environment is the environment where your containers for a network reside. You may think of it as a namespace. A network is made up of multiple organizations, and each organization needs their peers and other containers running somewhere, that environment is a Nodes Environment.|