NEAR SDK

The NEAR SDK is a library that allow to develop smart contracts. Currently, there exist two versions of NEAR SDK: one for Rust and one for JavaScript.





Smart Contracts on NEAR

This is how a smart contract written in Rust and JavaScript using the NEAR SDK looks like:


“`js
@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 cost gas
set_greeting({ greeting }: { greeting: string }): void {
near.log(`Saving greeting ${greeting}`);
this.greeting = greeting;
}
}

“`

“`rust
#[near(contract_state)]
pub struct Contract {
greeting: String,
}

impl Default for Contract {
fn default() -> Self {
Self { greeting: “Hello”.to_string(), }
}
}

#[near]
impl Contract {
pub fn get_greeting(&self) -> String {
self.greeting.clone()
}

pub fn set_greeting(&mut self, greeting: String) {
self.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


Searching for the Reference Docs

If you need to find a specific function signature, or understand the SDK struct/classes, please visit the SDK specific pages:

Generate comment with AI 2 nL
Scroll to Top