"""
GoChain is a blockchain implementation written in Go. This project aims to provide a simple yet functional blockchain system, including key generation, transaction handling, and basic consensus mechanisms.
- Key generation using Ed25519
- Transaction creation and validation
- Basic proof-of-work consensus algorithm
- Peer-to-peer networking
- Go 1.22.1 or later
-
Clone the repository:
git clone <repository-url> cd GoChain
-
Install dependencies:
go mod download
-
Run tests:
go test -v ./...
To contribute to this project, please follow these steps:
-
Clone the Repository: Clone the repository to your local machine.
git clone <repository-url>
-
Create a New Branch: Create a new branch for your feature or bugfix.
git checkout -b feature-branch
-
Make Your Changes: Make your changes to the codebase.
-
Commit Your Changes: Commit your changes with a descriptive message.
git commit -m "refactor: clean up Environment class and improve parameter handling"
-
Push Your Changes: Push your changes to the remote repository.
git push origin feature-branch
-
Create a Pull Request: Create a pull request from your branch to the main branch, and provide a detailed description of your changes.
For consistency, please use the following commit message format:
feat
: A new featurefix
: A bug fixdocs
: Documentation changesstyle
: Code style changes (formatting, missing semicolons, etc.)refactor
: Refactoring code without changing functionalitytest
: Adding or refactoring testschore
: Other changes that don't modify src or test files
Example:
git commit -m "refactor: clean up Environment class and improve parameter handling"