Introduction
This article aims to cover the key concepts, tools, and terms provided throughout the GalaChain documentation, facilitating a clearer understanding of the platform and its development ecosystem.
Prior Knowledge
To fully grasp the content of this article, it’s helpful to be familiar with:
- What is Blockchain?: Read on for an overview of blockchain technology, a decentralized ledger that records transactions across multiple computers.
- Smart Contracts: Understanding the fundamentals of smart contracts and their applications.
- Gala Ecosystem: Overview of the Gala platform and its components.
Terminology
API (Application Programming Interface): A set of protocols and tools for building software and applications, enabling communication between different software components.
Block: A fundamental unit of data structure in the GalaChain, containing a list of transactions. Each block is linked to the previous one through a cryptographic hash, forming a secure and immutable chain.
Block Browser: A local tool for browsing and inspecting the blockchain ledger, allowing developers to view blocks, transactions, and other blockchain data.
Block Hash: A unique identifier for a block, generated by hashing the block's header. The block hash ensures the integrity and immutability of the block within the blockchain.
Chaincode: A smart contract running on GalaChain defining the business logic for transactions written in TypeScript.
Chain-API: The application programming interface for interacting with GalaChain, enabling communication between applications and the blockchain network.
Chain-CLI: A command-line interface tool for interacting with GalaChain, useful for developers to perform operations like deploying chaincode, querying the blockchain, and managing channel configurations.
Chain-Client: A client library used to build applications that interact with the GalaChain, providing higher-level abstractions for common operations.
Chain-Connect: A module that handles the connectivity and network configuration, ensuring secure and reliable communication between nodes and applications on GalaChain.
Chain-Test: A testing framework provided within the SDK for developing and running tests on chaincode to ensure its correct functionality before deployment.
Channel: A private communication layer with its own ledger and world state within the GalaChain network.
CLI (Command-Line Interface): A text-based interface for interacting with software, allowing users to perform tasks by typing commands.
Consensus: The mechanism by which nodes in the GalaChain network agree on the state of the ledger, ensuring consistency and integrity of the blockchain data.
Docker: A platform used to create, deploy, and run applications using containers, providing a lightweight environment for running GalaChain components.
Docker Compose: A tool for defining and running multi-container Docker applications, used to manage the different components of GalaChain in a local development environment.
Fee: A charge applied to transactions on the GalaChain network, typically paid to the nodes that validate and confirm the transactions.
Instance: A Non-Fungible Token (NFT) or Fungible Token within the GalaChain network.
Hot Code Reload: A feature that automatically reloads chaincode in the local development environment when changes are detected, facilitating rapid development and testing.
Ledger: The immutable record of all transactions on the GalaChain, stored in blocks and maintained by nodes in the network.
Mainnet: The primary and live version of a blockchain network where actual transactions occur.
Node: A participant in the GalaChain network running the blockchain software, maintaining a copy of the ledger, and participating in consensus.
Proof of Authority: A consensus mechanism GalaChain uses involves a trusted group of nodes, also known as validators. These nodes create new blocks and verify transactions.
Smart Contract: Another term for chaincode, representing self-executing contracts with the terms of the agreement directly written into code.
Status: The current state of a transaction or block within the GalaChain network. Statuses can indicate whether a transaction is pending, confirmed, or failed, among other states.
Testnet: A testing environment that replicates the conditions of the mainnet, allowing developers to test and refine their applications without the risks associated with live deployment.
Timestamp: The time at which a block or transaction is created or confirmed, recorded in Unix epoch time format. Timestamps are used to maintain the chronological order of transactions and blocks in the blockchain.
Transaction: An action or operation performed on the blockchain, such as executing a chaincode function or sending a token to another address.
Type: A classification or category assigned to a transaction, block, or asset within the GalaChain network. Types help organize and manage different kinds of data and operations on the blockchain.
uniqueKey: A distinct identifier assigned to an asset, transaction, or entity within the GalaChain network. It is essential for preventing duplication, ensuring traceability, and enhancing the security and efficiency of data interactions within the blockchain.
Wallet: A digital tool or software that allows users to store, manage, and interact with their assets (such as NFTs and tokens) on the GalaChain network.