cavax is an experimental implementation of C language utils for the exploration of the Avalanche AVAX protocol.
Initially, cavax supports limited networking and basic passive functionality (e.g. it does not actively verify vertices). cavax listens to the Avalanche network and calls hooks that you can set up to handle each message type.
Some default hooks are provided for reference, but users will probably want to write their own custom hooks to implement solutions such as database backends for Avalanche data collection.
The goal is to make cavax very lightweight, such that it can handle the high TPS of an Avalanche network running at full capacity.
cavax is based on the standard Avalanche implementation by Ava Labs, but we make no claims of compatibility or suitability of any kind. We’ve taken the standards from Ava Labs’ published documentation and from the Golang source code itself.
Wherever possible, we’ve commented the C source code with references to the Golang implementation file:line.
We hope you enjoy playing with the cavax Avalanche AVAX C language code!
git clone https://github.com/cryptobi/cavax.git
Then proceed with standard GNU
autotools build procedure. See INSTALL.
If you don’t have a git client available, you may download a ZIP file instead.
This code released under the terms of the MIT license.
Browse cavax Documentation at https://crypto.bi/cavax/
Avalanche and AVAX are registered trademarks of Ava Labs Inc.
This is not an official Ava Labs project. We are in no way affiliated with Ava Labs.
This free open source software provided for Avalanche AVAX learning and exploration purposes.
Reference Avalanche Implementation [Golang]
Avalanche Serialization Primitives