Kythera is a Toolset for Filecoin Virtual Machine Native Actor development, testing and deployment.
See the installation guide in the documentation.
We recommend starting from our documentation to make you first steps with Kythera.
actors
- This crates is a utility to help us generate Wasm bytecode at build time so that we can leverage them both in our implementation and our tests.
actors
- Contains actors implementing utilities over the Kythera FVM. Currently, the only actor available in this directory is the Cheatcodes actor.
test_actors
- Test actors that are useful to test the implementation of Kythera. These actors are only useful while contributing to Kythera.
cli
- Crate implementing the logic for the
kythera
binary.
- Crate implementing the logic for the
common
- This crate was created to make FVM utilities available to any project. For example, ABI serializing and deserializing, method name hash...
fvm
- Implementation of the Kythera FVM. Mostly extends implementation from
ref-fvm
with some custom logic to allow Cheatcodes implementation.
- Implementation of the Kythera FVM. Mostly extends implementation from
lib
- Contains the core logic for the testing framework. While it is mostly meant to be leveraged by
kythera- cli
, we hope that having the core testing logic available as a library could prove useful to other projects.
- Contains the core logic for the testing framework. While it is mostly meant to be leveraged by
Contributions are welcome! If you'd like to contribute to Kythera, please follow these steps:
- Fork the repository on GitHub.
- Create a new branch with a descriptive name.
- Make your desired changes.
- Commit your changes and push the branch to your forked repository.
- Open a pull request on the main repository, describing the changes you made.
- THANKS!
Please ensure your contributions adhere to the Contributor Covenant Code of Conduct.
When dealing with updates over the cheatcodes-actor
crate, it is expected that the contributor also generates the new
artifacts to be embedded within the kythera-actors
crate. To do so, simply run:
$ make generate-artifacts
This project is licensed under a dual MIT and APACHE V2 licensing model.