Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
50 commits
Select commit Hold shift + click to select a range
929919f
new add event module
maoaixiao1314 Jul 3, 2025
6f28dcb
Add contract ABI file, event keeper dependency injection, etc
maoaixiao1314 Jul 4, 2025
70d2b06
Event module modification
maoaixiao1314 Jul 7, 2025
9d57800
new add yuma module
maoaixiao1314 Jul 10, 2025
065b70e
Modify the event module and add event handling
maoaixiao1314 Jul 10, 2025
764aa80
Modify DefaultParamsMap(),Default parameters for adding subnets
maoaixiao1314 Jul 10, 2025
953e89d
Modify yuma module
maoaixiao1314 Jul 10, 2025
d19922f
Modify some configurations and implement abci
maoaixiao1314 Jul 11, 2025
b4cc03e
Improve the Yuma consensus algorithm
maoaixiao1314 Jul 11, 2025
cfcaf06
Add Yuma reward processing module:
maoaixiao1314 Jul 13, 2025
d61ea95
Added a blockinflation module and redefined the inflation mode of the…
maoaixiao1314 Jul 16, 2025
f6d8096
review code
maoaixiao1314 Jul 16, 2025
b0edfb0
Reclassify block rewards, add Yuma's reward ratio and pending transac…
maoaixiao1314 Jul 16, 2025
1c6efee
new add FirstEmissionBlock and coinbase
maoaixiao1314 Jul 16, 2025
1c92256
Revise the reward distribution method and provide a detailed distribu…
maoaixiao1314 Jul 21, 2025
73a4d0f
new add blockflation unit test
maoaixiao1314 Jul 22, 2025
5a2ab07
Modify the startup method
maoaixiao1314 Jul 22, 2025
64fa3cd
Modify startup error
maoaixiao1314 Jul 22, 2025
9d8da68
review code
maoaixiao1314 Jul 22, 2025
9a445fb
review code
maoaixiao1314 Jul 22, 2025
a201ce6
modify bug runtime error: invalid memory address or nil pointer deref…
maoaixiao1314 Jul 22, 2025
34af38e
Modify the startup script and multi node initialization script
maoaixiao1314 Jul 23, 2025
e6588c9
modify init_validators.sh
maoaixiao1314 Jul 23, 2025
ebde49d
modify init_validators.sh
maoaixiao1314 Jul 23, 2025
4227611
modify init_validators.sh
maoaixiao1314 Jul 23, 2025
be2b5af
review code
maoaixiao1314 Jul 23, 2025
e7ee260
Resolve the error of invalid memory address or nil pointer dereferenc…
maoaixiao1314 Aug 5, 2025
81a0784
Resolve the error of invalid memory address or nil pointer dereferenc…
maoaixiao1314 Aug 5, 2025
772c8a0
Resolve the error of invalid memory address or nil pointer dereferenc…
maoaixiao1314 Aug 5, 2025
61607de
Resolve the error of invalid memory address or nil pointer dereferenc…
maoaixiao1314 Aug 5, 2025
f58c714
Resolve the error of invalid memory address or nil pointer dereferenc…
maoaixiao1314 Aug 5, 2025
e738e48
Resolve the issue of null pointer initialization error
maoaixiao1314 Aug 5, 2025
037dc90
Resolved the error 'tx *types.MsgDelegate doesn't implement authsigni…
maoaixiao1314 Aug 7, 2025
3d13a2b
Modify the address prefix for use in the development environment. For…
maoaixiao1314 Aug 8, 2025
701bd45
Update the event module and replace the new contract
maoaixiao1314 Aug 12, 2025
95761ea
Optimize Stakework Consensus
maoaixiao1314 Aug 12, 2025
2174352
review code
maoaixiao1314 Aug 13, 2025
fcfc5f0
Add MintAlphaTokens feature:
maoaixiao1314 Aug 14, 2025
6915e16
Get Log
maoaixiao1314 Aug 14, 2025
46d2f4b
Modify the filter conditions of getsubnet and update the readme
maoaixiao1314 Aug 14, 2025
7f957b9
review code
maoaixiao1314 Aug 14, 2025
b9309fc
Optimize the acquisition of subnet information in alpha_token
maoaixiao1314 Aug 14, 2025
4303d10
review code
maoaixiao1314 Aug 15, 2025
4615c67
review code
maoaixiao1314 Aug 15, 2025
ad85ea8
review code
maoaixiao1314 Aug 15, 2025
3184abf
review code
maoaixiao1314 Aug 15, 2025
88cb972
new add blockinflation grpc client and gateway
maoaixiao1314 Aug 15, 2025
975ec51
reviewreview code
maoaixiao1314 Aug 15, 2025
5a688ae
solve Error: Process completed with exit code 2.
maoaixiao1314 Aug 15, 2025
ae9649f
review code
maoaixiao1314 Aug 15, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
87 changes: 68 additions & 19 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,58 +8,108 @@ parent:
</div>

Hetu Chain is a scalable, high-throughput blockchain that is fully compatible and interoperable with Ethereum.
It's built using the [Cosmos SDK](https://github.com/cosmos/cosmos-sdk/) and implements
[Narwhal](https://github.com/MystenLabs/narwhal) + [Bullshark](https://github.com/MystenLabs/sui/tree/main/consensus/bullshark) consensus mechanism
for improved performance and scalability.
It's built using the [Cosmos SDK](https://github.com/cosmos/cosmos-sdk/) with EVM compatibility, supporting both Cosmos and Ethereum ecosystems.

## Documentation

Our documentation is hosted in a [separate repository](https://github.com/hetu-project/docs).
Head over there and check it out.

**Note**: Requires [Go 1.20+](https://golang.org/dl/)
## Prerequisites

- [Go 1.20+](https://golang.org/dl/)
- [Git](https://git-scm.com/)
- [Make](https://www.gnu.org/software/make/manual/make.html)
- [gcc](https://gcc.gnu.org/) (for cgo support)

## Installation

For prerequisites and detailed build instructions
please read the [Installation](https://docs.hetu.org/protocol/hetu-cli) instructions.
Once the dependencies are installed, run:
Follow these steps to install Hetu Chain from source:

### Clone the Repository

```bash
git clone https://github.com/hetu-project/hetu-chain.git
cd hetu-chain
```

### Build and Install

```bash
# Build the binary
make build

# Install the binary to your GOPATH
make install
```

Or check out the latest [release](https://github.com/hetu-project/hetu/releases).
After installation, verify that the binary is correctly installed:

## Deployment
```bash
hetud version
```

### Using Pre-built Binaries

**Important: Before deploying, ensure that the Narwhal mempool is deployed. See [hetu-parallel-engine/hetu-consensus](https://github.com/hetu-project/hetu-parallel-engine/tree/main/hetu-consensus) for details.**
Alternatively, you can download pre-built binaries from the latest [release](https://github.com/hetu-project/hetu/releases).

Comment on lines +54 to +55
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue

Fix release links to point to the hetu-chain repository

The URLs currently reference hetu (org/repo mismatch). This will 404 and confuse users.

-Alternatively, you can download pre-built binaries from the latest [release](https://github.com/hetu-project/hetu/releases).
+Alternatively, you can download pre-built binaries from the latest [release](https://github.com/hetu-project/hetu-chain/releases).
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
Alternatively, you can download pre-built binaries from the latest [release](https://github.com/hetu-project/hetu/releases).
Alternatively, you can download pre-built binaries from the latest [release](https://github.com/hetu-project/hetu-chain/releases).
🤖 Prompt for AI Agents
In README.md around lines 54 to 55, the release download link points to the
wrong repository (hetu) and will 404; update the URL to reference the correct
hetu-chain repository path (replace
https://github.com/hetu-project/hetu/releases with the correct
https://github.com/hetu-project/hetu-chain/releases or the project's canonical
org/repo release URL), verify the link works, and run a quick link-check to
ensure no other release links are incorrect.

```bash
# Download the binary for your platform
wget https://github.com/hetu-project/hetu/releases/download/v0.x.x/hetud-v0.x.x-linux-amd64.tar.gz

# Extract the binary
tar -xzf hetud-v0.x.x-linux-amd64.tar.gz

# Move the binary to your PATH
sudo mv hetud /usr/local/bin/
```

## Deployment

### Local Deployment

To deploy locally, use the `local_node.sh` script. This script will set up a local environment for running the Hetu Chain node.
To quickly set up a local development environment, use the `init.sh` script:

```bash
./local_node.sh
# Initialize a single-node local network
./init.sh

# Start the node
./start_node_archive.sh
```

This script will:
1. Initialize the genesis file
2. Create a validator account
3. Add genesis accounts with test tokens
4. Configure the node
5. Start the node in development mode

### Remote Deployment

For remote deployment, ensure that `hetud` is available in the `PATH` on each machine. It is also recommended to set up SSH keys on the remote machines for secure and passwordless access.
For multi-node deployments in a production environment:

1. `init_validators.sh`: This script initializes the validators required for the Hetu Chain. You need to provide the remote IPs for the 4 validators in the network as parameters.
1. **Initialize Validators**: Use the `init_validators.sh` script to set up validators in your network.

```bash
./init_validators.sh <remote_ip1> <remote_ip2> <remote_ip3> <remote_ip4>
```

2. `start_node_archive.sh`: This script starts the node in archive mode.
2. **Start Archive Node**: For full historical data, start a node in archive mode.

```bash
./start_node_archive.sh
```

These scripts will help you set up and run the Hetu Chain on a remote server.
3. **Configure Networking**: Ensure proper firewall settings to allow P2P communication between nodes.

## Key Features

- **EVM Compatibility**: Full support for Ethereum smart contracts and tools
- **Cosmos SDK Integration**: Leverage Cosmos ecosystem features like IBC
- **Bittensor-inspired Consensus**: Advanced consensus mechanism for AI networks
- **Subnet Architecture**: Specialized subnets for different AI services
- **Alpha Token System**: Subnet-specific tokens for incentive alignment

## Community

Expand All @@ -75,7 +125,6 @@ We welcome all contributions! There are many ways to contribute to the project,

- Cloning code repo and opening a [PR](https://github.com/hetu-project/hetu/pulls).
- Submitting feature requests or [bugs](https://github.com/hetu-project/hetu/issues).
- Improving our product or contribution [documentation](./docs/).
- Contributing [use cases](./demos/) to a feature request.
- Improving our product or contribution [documentation](https://github.com/hetu-project/hetu-docs).

For additional instructions, standards and style guides, please refer to the [Contributing](./CONTRIBUTING.md) document.
For additional instructions, standards and style guides, please refer to the [Contributing](https://github.com/hetu-project/hetu-docs) document.
Loading
Loading