Skip to content

near-api

Reference Documentation Crates.io version Code Coverage Download Join the community on Discord Join the community on Telegram

The near-api is a simple Rust library that helps developers interact easily with the NEAR blockchain. The library was highly inspired by the API of the near-cli-rs library. The library extensively utilizes builder patterns. This way, we guide the users through the user flow, preventing most of the errors and focusing on each step.

Currently, the library provides:

  • Account management
  • Contract deployment and interaction
  • NEAR, FT, NFT transfers
  • Storage deposit management
  • Stake management
  • Ability to create custom transactions
  • Several ways to sign transactions (secret key, seed phrase, file, ledger, secure keychain).
  • Account key pool support to sign the transaction with different user keys to avoid nonce issues.

The minimum required version is located in the rust-version field of the Cargo.toml file.

Features

  • ledger: Enables integration with a Ledger hardware signer for secure key management.
  • keystore: Enables integration with a system keystore signer for managing keys securely on the local system.

Current issues

The library is in good condition, but lacks a few points to be even better:

  • documentation
  • good quality examples
  • integration tests for all API calls (in progress - targeting 60% coverage)
  • CI
  • anyhow -> thiserror
  • ledger is blocking and it's not good in the async runtime
  • secure keychain is not that straightforward to use
  • storage deposit manager for FT calls
  • basic logging with tracing for querying/signing/sending transactions
  • self-sustainable. remove the nearcore as a dependency (#5)

Examples

The crate provides examples that contain detailed information on using the library.

About

No description, website, or topics provided.

Resources

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Releases

Packages

Used by

Contributors

Languages