Skip to content

near/near-api-rs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

df364f2 · Apr 11, 2025
Mar 27, 2025
Apr 11, 2025
Jul 26, 2024
Apr 11, 2025
Jan 30, 2025
Dec 19, 2024
Mar 17, 2025
Dec 18, 2024
Mar 17, 2025
Oct 16, 2024
Oct 16, 2024
Mar 1, 2025
Mar 1, 2025
Aug 21, 2024

near-api

Reference Documentation Crates.io version 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 for full feature support is located in the rust-version field of the Cargo.toml file. However, it can still be compiled and used without the keystore feature on older versions of Rust.

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.
  • workspaces: Provides integration with near-workspaces for testing purposes. This feature allows you to convert near-workspaces networks (such as sandbox, testnet, etc.) into a NetworkConfig and use near-workspaces Account object as a signer for testing and development.

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
  • 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

License

Apache-2.0, MIT licenses found

Licenses found

Apache-2.0
LICENSE-APACHE
MIT
LICENSE-MIT

Code of conduct

Security policy

Stars

Watchers

Forks

Packages

No packages published

Languages