counter-rust-deprecated
counter-rust-deprecated copied to clipboard
Simple counter in Rust. Increment, decrement, and reset. See branches for extended usage.
Counter example in Rust
Description
This contract implements simple counter backed by storage on blockchain.
Contract in contract/src/lib.rs
provides methods to increment / decrement counter and get it's current value or reset.
Plus and minus buttons increase and decrease value correspondingly. When button L is toggled, a little light turns on, just for fun. RS button is for reset. LE and RE buttons to let the robot wink at you.
To Run
Open in the Gitpod link above or clone the repository.
git clone https://github.com/near-examples/rust-counter
Setup Or skip to Login if in Gitpod
Install dependencies:
yarn
If you don't have Rust
installed, complete the following 3 steps:
- Install Rustup by running:
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
(Taken from official installation guide)
- Configure your current shell by running:
source $HOME/.cargo/env
- Add wasm target to your toolchain by running:
rustup target add wasm32-unknown-unknown
Next, make sure you have near-cli
by running:
near --version
If you need to install near-cli
:
npm install near-cli -g
Login
If you do not have a NEAR account, please create one with NEAR Wallet.
In the project root, login with near-cli
by following the instructions after this command:
near login
Modify the top of src/config.js
, changing the CONTRACT_NAME
to be the NEAR account that was just used to log in.
…
const CONTRACT_NAME = 'YOUR_ACCOUNT_NAME_HERE'; /* TODO: fill this in! */
…
Start the example!
yarn start
To Test
yarn test
To Explore
-
contract/src/lib.rs
for the contract code -
src/index.html
for the front-end HTML -
src/main.js
for the JavaScript front-end code and how to integrate contracts -
src/test.js
for the JS tests for the contract
To Build the Documentation
cd contract
cargo doc --no-deps --open