AssemblyScript SDK designed for developing smart contracts on the Archethic Public Blockchain.
- Peace of mind: Abstract WASM in/out complexity by providing a simple API and decorators
- Integrated hooks: Reserved functions (onInit, onUpgrade) to leverage blockchain hooks
- Typed language: Built on AssemblyScript, a TypeScript-like language
- Build-in specification: Integrate a manifest generation to export types and ABI
- Tooling: SDK provides CLI & Test framework to start in minutes smart contract development
- Node.js
- npm
- Basic knowledge of TypeScript or AssemblyScript.
Install the SDK via npm:
npm install @archethicjs/ae-contract-as
- Initialize a new AssemblyScript project:
npm create @archethicjs/create-ae-contract-as my-smart-contract
cd my-smart-contract
npm install
- Build
npm run build
- Test
npm run test
- Deploy
npx aewasm build --mode release && npx aewasm deploy -s <SEED> -e [ENDPOINT]
The main components of the project are:
- assembly: Core AssemblyScript SDK code (I/O management, std library, shared data structures)
- transform: Custom transformers for AssemblyScript compiler for decorators and manifest generation
- bin: Contains code for the
aewasm
CLI
Thank you for considering to help out with the source code. We welcome contributions from anyone and are grateful for even the smallest of improvement.
Please to follow this workflow:
- Fork it!
- Create your feature branch (git checkout -b my-new-feature)
- Commit your changes (git commit -am 'Add some feature')
- Push to the branch (git push origin my-new-feature)
- Create new Pull Request
AGPL