NEAR Studio is a cloud IDE for development of NEAR Protocol smart contracts.
It's heavily based on WebAssembly Studio.
To run a local copy, you will need to install node.js and webpack on your computer, then run the following commands:
npm install
To build NEAR Studio whenever a file changes run:
npm run build-watch
To start a dev web server run:
npm run dev-server
Before submitting a pull request run:
npm test
If you want to contribute upstream to WebAssemblyStudio, please get familiar with the contributing guide.
Join our Discord if you want to help with NEAR-specific stuff or just stay in touch with development progress.
We also have Telegram with more curated updates.
This project depends on several excellent libraries and tools:
-
WebAssembly Studio is used as a skeleton for our IDE.
-
Monaco Editor is used for rich text editing, tree views and context menus.
-
WebAssembly Binary Toolkit is used to assemble and disassemble
.wasm
files. -
Binaryen is used to validate and optimize
.wasm
files. -
Clang Format is used to format C/C++ files.
-
Cassowary.js is used to make split panes work.
-
Showdown is used to automatically preview
.md
files. -
Capstone.js is used to disassemble
x86
code. -
AssemblyScript is used to compile TypeScript smart contracts into WebAssembly.
-
bignum.wasm Provides big numbers (128-bit and more) implementation for use with AssemblyScript.
-
BigInteger.js Provides big numbers (arbitrary length) implementation for use in JS host code for smart contracts.
-
LLVM, Rust, Emscripten running server side.
-
And of course: React, WebPack, TypeScript and TSLint.