- Rust crate:
no_stdcompatible, sha3 for keccak256 - TypeScript package: ESM, zero runtime deps, vitest for tests
- Demo contract: Odra framework (Casper smart contracts)
cargo test
cargo test --no-default-features # verify no_std buildscd js && npm install && npm testAll commits MUST use:
- Name:
Michael Steuer - Email:
michael@casper.network
This is configured in the repo's .git/config. Do NOT override with your own identity.
- API must mirror EIP-712 semantics exactly
- Cross-language test vectors: Rust and TypeScript MUST produce identical hashes for same inputs
- No external dependencies beyond sha3/keccak256
- Must work in WASM (Casper contract target)
- Every public function has doc comments with examples
- Integration tests with known EIP-712 test vectors from Ethereum
- README with quick-start guide