Practical overview
When it fits
Use starknet-rs when a Rust application needs Starknet connectivity or contract-related components, and its experimental status and documented protocol versions fit the project.
Who it is for
- Rust developers building applications that read from or submit operations to Starknet.
- Teams creating Starknet client integrations or Rust tooling around the documented JSON-RPC interface.
- Developers who need contract, account, signer or Ledger hardware-wallet components.
Documented uses
- Query Starknet nodes through JSON-RPC over HTTP or use WebSocket subscriptions.
- Connect to sequencer and feeder gateway services.
- Deploy and interact with Starknet smart contracts.
- Use account-contract signers and Ledger hardware-wallet support in Rust integrations.
Requirements & limits
- The README recommends the umbrella starknet crate, which re-exports other workspace crates, while also providing focused crates for providers, contracts, signers and other components.
- The published crates.io version may lag behind the GitHub repository; the README shows both dependency declaration options.
- The repository identifies Starknet version 0.14.0 and JSON-RPC specification version 0.9.0.
- WebSocket support is described for subscriptions; HTTP is also listed as a JSON-RPC transport.
- ABI-based strongly typed smart-contract binding generation is marked incomplete.
Check current requirements in the official documentation. Source-based guidance does not mean OpenViST has run or independently tested this project.
Add starknet-rs to a Rust project
Declare the starknet crate as a project dependency using the documented Cargo configuration.
Before you start
- A Rust project with a Cargo.toml file.
Steps
Open the project's Cargo.toml.
Add the dependency under [dependencies] as starknet = "0.17.0" to use the crates.io package.
Alternatively, specify starknet = { git = "https://github.com/xJonathanLEI/starknet-rs" } to use the GitHub repository.
Expected outcome
The Cargo manifest declares starknet as a dependency, using either the published crate version or the repository source.
Guide limitations
- The README cautions that the crates.io version may be outdated.
- This setup guidance does not document a build or runtime test.
- The library is described as experimental, with breaking changes possible before a stable release.
Sources & review
Source record details
- Source availability
- Active
- Sources checked
- 13 October 2026
- Original website title
- xJonathanLEI/starknet-rs · Official homepage title · retained in its source language

