Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.near.org/llms.txt

Use this file to discover all available pages before exploring further.

The NEAR SDK is a library that allows you to develop smart contracts. Currently, there are two versions of the NEAR SDK: one for Rust and one for JavaScript.
We strongly recommend using the Rust SDK for production contracts. Rust provides the most mature tooling, best performance, and the strongest safety guarantees when handling real assets on-chain. The JavaScript SDK is a great option for prototyping and learning.
The best place to start learning is our QuickStart Guide.

Rust SDK

Rust SDK reference documentation.

JavaScript SDK

JavaScript SDK reference documentation.

Smart contracts on NEAR

This is how a smart contract written in Rust and JavaScript using the NEAR SDK looks like:
@NearBindgen({})
class HelloNear {
  greeting: string = 'Hello';

  @view({}) // This method is read-only and can be called for free
  get_greeting(): string {
    return this.greeting;
  }

  @call({}) // This method changes the state, for which it costs gas
  set_greeting({ greeting }: { greeting: string }): void {
    near.log(`Saving greeting ${greeting}`);
    this.greeting = greeting;
  }
}

Ready to start developing?

Start from our Smart Contract QuickStart Guide, and let it guide you through all our documentation on building smart contracts.

Want to see examples?

We have a section dedicated to tutorials and examples that will help you understand diverse use cases and how to implement them.

Reference docs

If you need to find a specific function signature, or understand the SDK structs and classes, visit the SDK-specific pages: