Files
sdk/CONTRIBUTING.md
zeekay 072311fef2 feat: Update Lux SDK with working mainnet boot and clean architecture
- Implement network management with mainnet/testnet/local support
- Add blockchain builder for L1/L2/L3 chains with multiple VM types
- Create P-Chain, C-Chain, X-Chain managers with mock implementations
- Fix bech32 encoding using btcsuite library (all crypto tests pass)
- Clean up dependencies and remove non-existent package references
- Archive old incompatible code to .archive/ directory
- Add working mainnet boot example (21 validators, 3 chains)
- Configure CI/CD pipeline with Go 1.24.5
- Add golangci-lint and goreleaser configurations
- Achieve 100% test pass rate across all packages

This SDK now provides a clean foundation for Lux blockchain development
with mock implementations ready for integration with actual node software.
2025-08-04 01:20:21 -05:00

1.6 KiB

Contributing to sdk

Thank you for your interest in contributing to sdk! By contributing to sdk, you are helping to build the foundation for the next generation of blockchains and decentralized applications.

Getting Started

Prerequisites

To contribute to sdk, you'll need:

  • Go 1.20 or higher

Setting up your development environment

  1. Clone the repository:
git clone https://github.com/luxfi/sdk.git
cd sdk
  1. Install the dependencies:
go mod download

This will download and install all required dependencies for the project.

Building and running tests

To build and run tests for the sdk, simply run:

./scripts/tests.unit.sh

This will build and run all tests for the project.

Running linters

To run the linters, simply run:

./scripts/tests.lint.sh

This will run the linters on all code in the project.

The sdk project also has a fixer that tries to help. To run the fixer, simply run:

./scripts/fix.lint.sh

Contributing

We welcome contributions to sdk! To contribute, please follow these steps:

  1. Fork the repository and create a new branch for your contribution.

  2. Make your changes and ensure that all tests pass and linting is clean.

  3. Write tests for any new features or bug fixes. (If necessary)

  4. Submit a pull request with your changes.

Pull Request Guidelines

When submitting a pull request, please ensure that:

  1. Your code is formatted using go fmt.

  2. Your code is properly tested.

  3. Your code passes all linters.

  4. Your pull request description explains the problem and solution clearly.