aergo

package module
v2.4.10 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 30, 2023 License: MIT Imports: 0 Imported by: 0

README

Go Report Card MIT License Maintainability Test Coverage API Reference

Aergo - Distributed Trust at Scale

Official Chain Software of Aergo Protocol

We are developing the most practical and powerful platform for blockchain businesses. There are four main ideologies guiding this project:

  1. Developer-friendly
  2. Guaranteed performance
  3. Scalable architecture
  4. Connect with the world

You can see the current public network status on Aergoscan.

Official Documentation

Roadmaps

5th: Aergo Future
  • Will be updated
4th: Aergo Mainnet 2.0 (planned in 4Q, 2019)
  • DAO
  • Staking/Voting
  • Reward for Staking
  • Alpha net (SQL enabled) launched
  • Advanced performance features
  • RAFT for Private Chain
  • Authorization for Private Chain
  • 2Way Swap with Ethereum
  • 2Way Swap with Binance Dex
3rd: Aergo Mainnet (planned in March, 2019)
  • BFT-dPOS with 13 BPs
  • Aergo Scan
  • Aergo Connect
2nd: Aergo Testnet (28, Dec, 2018)
  • BFT-dPOS with Voting
    • The pre-test net has the function of agreeing blocks among the set BPs. TestNet has a function to select BP through voting.
  • Named Account
    • For user's convenience, Named Account function that can be accessed based on Name rather than Address is provided.
  • Expanded Aergo Lua
    • The Aergo Lua feature has been extended for more convenient development.
  • Advanced Client Framework
    • Provides a wallet interface that interacts with keystore and manages nonce.
    • Provides the ability to make smart contracts through interface calls.
    • Provides a contract library to issue tokens based on Aergo.
  • Hub Enterprise
    • Enterprise customers view management and monitoring of their networks as a prerequisite.
    • We provide Hub Enterprise control solution to solve this problem.
  • Merkle Bridge Verification
    • StateTrie Merkle proof verifications and delegated token transfers are now implemented in the merkle-bridge.
  • Various Smart Contract Examples
    • Provide some standard smart contracts
  • TestNet
    • Launch the Test Network to provide network for community and experment
    • We provide https://aergoscan.io.
1st: Aergo Alpha (31, Oct, 2018)
  • Consensus - BFT-dPOS (election not integrated)
    • We provide BFT by solving various problems that may occur in dpos.
  • Aergo SQL smart contract (Lua-jit)
    • It is a powerful smart contract language providing DB function.
  • Client - Ship
    • Client framework and development environment
    • Provides a package management and testing environment similar to NPM.
  • Client SDK
    • heraj (java)
    • herajs (javascript)
    • herapy (python)
  • Browser Wallet (1~2 weeks later)
    • Chrome Extension provides a coin transfer wallet.
  • Sub Project
    • Litetree
      • Improved SQLite is used to provide DB functionality in a block chain.
      • Provides higher performance through LMDB.
    • Sparse Merkle Tree
      • Provides fast, space-saving sparse merkle tree.
    • Pre-Testnet
beginning: Skeleton (31, July, 2018)
  • Platform framework
  • Stub consensus(dpos without voting)
  • Account model
  • Mempool
  • Networking - p2p/protocol
  • Cmd aergocli/aergosvr
  • Simple client API
  • Smart contract will not be released - you can see the prototype in coinstack3sp2

Key thoughts of the architecture

MVP based, Forward compatibility, Iteration

Information

Server port usages
Usage Port
gRPC 7845
P2P 7846

Installation

Prerequisites
Build

Building from Source

Contribution

Following Golang conventions TBD

License

All code is licensed under the MIT License (https://opensource.org/licenses/MIT).

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
key
cmd
*
*
aergocli/cmd/mock_types
Package mock_types is a generated GoMock package.
Package mock_types is a generated GoMock package.
aergocli/util/encoding
Package encoding defines interfaces shared by other packages that convert data to and from byte-level and textual representations.
Package encoding defines interfaces shared by other packages that convert data to and from byte-level and textual representations.
aergocli/util/encoding/json
Package json implements encoding and decoding of JSON as defined in RFC 7159.
Package json implements encoding and decoding of JSON as defined in RFC 7159.
*
colaris
* @file * @copyright defined in aergo/LICENSE.txt
* @file * @copyright defined in aergo/LICENSE.txt
polaris
* @file * @copyright defined in aergo/LICENSE.txt
* @file * @copyright defined in aergo/LICENSE.txt
*
system
*
*
internal
p2p
p2pcommon
* @file * @copyright defined in aergo/LICENSE.txt
* @file * @copyright defined in aergo/LICENSE.txt
p2pmock
package p2pmock is a generated GoMock package.
package p2pmock is a generated GoMock package.
v030
Package v030 is a collection of classes for p2p version 0.3.0 It contains IO, handshake, handlers, etc.
Package v030 is a collection of classes for p2p version 0.3.0 It contains IO, handshake, handlers, etc.
pkg
*
*
tools
dbkey
package dbkey contains a key prefix collection of low level database accessors.
package dbkey contains a key prefix collection of low level database accessors.
message/messagemock
Package messagemock is a generated GoMock package.
Package messagemock is a generated GoMock package.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL