Categorygithub.com/Ankr-network/coqchain
modulepackage
0.0.0-20221109070454-eb4623fbe25e
Repository: https://github.com/ankr-network/coqchain.git
Documentation: pkg.go.dev

# README

CoqChain

this chain fork from go-ethereum and support some advanced features.

Status

it still work in progress, coming soon.

Features:

  • supply 0 gas fee contract, it is convenient for enterprise applications
  • lower and fixed gas fee
  • Fixed governance token supply
  • Recycle governance tokens
  • support to prune state data automatically
  • support to slash evil validator
  • support to remove evil validator automatically
  • every sync node should have some reward
  • support original bridge, which can interact with BSC and Ethereum chain
  • speed up transactions
  • implement special storage layer for store chain data better and more efficient
  • replace Merkle Tree with Verkle tree
  • etc...

Bridge Architect

License

The go-ethereum library (i.e. all code outside of the cmd directory) is licensed under the GNU Lesser General Public License v3.0, also included in our repository in the COPYING.LESSER file.

The go-ethereum binaries (i.e. all code inside of the cmd directory) is licensed under the GNU General Public License v3.0, also included in our repository in the COPYING file.

# Packages

Package accounts implements high level coqchain account management.
No description provided by the author
Package common contains various helper functions.
Package consensus implements different coqchain consensus engines.
No description provided by the author
No description provided by the author
Package core implements the coqchain consensus protocol.
No description provided by the author
Package eth implements the coqchain protocol.
Package ethclient provides a client for the coqchain RPC API.
Package ethdb defines the interfaces for an coqchain data store.
Package ethstats implements the network stats reporting service.
Package event deals with subscriptions to real-time events.
Package graphql provides a GraphQL interface to coqchain node data.
Package les implements the Light coqchain Subprotocol.
Package light implements on-demand retrieval capable state and chain objects for the coqchain Light Client.
Package log15 provides an opinionated, simple toolkit for best-practice logging that is both human and machine readable.
Go port of Coda Hale's Metrics library <https://github.com/rcrowley/go-metrics> Coda Hale's original work: <https://github.com/codahale/metrics>.
Package miner implements coqchain block creation and mining.
Package node sets up multi-protocol coqchain nodes.
Package p2p implements the coqchain p2p network protocols.
No description provided by the author
Package rlp implements the RLP serialization format.
Package rpc implements bi-directional JSON-RPC 2.0 on multiple transports.
No description provided by the author
Package tests implements execution of coqchain JSON tests.
Package trie implements Merkle Patricia Tries.
No description provided by the author

# Variables

NotFound is returned by API methods if the requested item does not exist.

# Structs

CallMsg contains parameters for contract calls.
FilterQuery contains options for contract log filtering.
SyncProgress gives progress indications when the node is synchronising with the coqchain network.

# Interfaces

ChainReader provides access to the blockchain.
ChainStateReader wraps access to the state trie of the canonical blockchain.
ChainSyncReader wraps access to the node's current sync status.
A ContractCaller provides contract calls, essentially transactions that are executed by the EVM but not mined into the blockchain.
GasEstimator wraps EstimateGas, which tries to estimate the gas needed to execute a specific transaction based on the pending state.
GasPricer wraps the gas price oracle, which monitors the blockchain to determine the optimal gas price given current fee market conditions.
LogFilterer provides access to contract log events using a one-off query or continuous event subscription.
PendingContractCaller can be used to perform calls against the pending state.
A PendingStateEventer provides access to real time notifications about changes to the pending state.
A PendingStateReader provides access to the pending state, which is the result of all known executable transactions which have not yet been included in the blockchain.
Subscription represents an event subscription where events are delivered on a data channel.
TransactionReader provides access to past transactions and their receipts.
TransactionSender wraps transaction sending.