Layered crates for writing typed, ergonomic Move interactions on Sui from Rust.
This workspace is intentionally “deep”: each crate is a small abstraction that solves one problem, and higher layers build on lower ones.
The top-level mental model is Read → Tx → Commit with a cursor that advances your local
frontier by applying transaction effects. See MODEL.md.
This is an early 0.1 workspace. Public APIs may change before 1.0; treat the crate boundaries
and the MODEL.md invariants as more stable than individual function names.
sui-move: Move-shaped types (MoveType,MoveStruct, abilities, decoding helpers). Seesui-move/README.md.sui-move-derive: derive macros for defining Move-shaped Rust structs. Seesui-move-derive/README.md.sui-move-call: typed Move call descriptions (CallSpec) andToCallArg. Seesui-move-call/README.md.sui-move-ptb: build SuiProgrammableTransactions (PTBs) fromCallSpec. Seesui-move-ptb/README.md.sui-move-runtime: a cursor-driven runtime for Read/Tx/Commit of PTBs and auto-updating typed handles from transaction effects. Seesui-move-runtime/README.md.sui-move-codegen: generate typed Rust bindings (types +CallSpecbuilders) from on-chain Move package metadata. Seesui-move-codegen/README.md.
- Application code: start at
sui-move-runtime/README.md. - Interface crates (module/function wrappers): start at
sui-move-call/README.md. - Pure type modeling/decoding: start at
sui-move/README.md. - Generating bindings from on-chain metadata: start at
sui-move-codegen/README.md.
See CONTRIBUTING.md for local checks and pull request expectations.
See SECURITY.md for vulnerability reporting.
Licensed under the Apache License, Version 2.0. See LICENSE.