Algo Builder v1.0 Released
After 10 months of development, we are pleased to release version 1.0! We also have a new website: https://algobuilder.dev, with project guide as well as API documentation.
What is Algo Builder
Algo Builder is a framework for building Algorand dapps for enterprises as well as hackathon project. It allows you to build, test, deploy and maintain projects as well as gives you an access to high level libraries.
Our goal is to make shipping Algorand applications simple, efficient, and scalable.
The framework is composed from:
algob: a tool to create and manage projects, running scripts, and executing tests.
examples: set of verified smart contract templates - a get go for starting a new projects.
runtime: efficient implementation of Algorand runtime for the test suite.
dapp templates: webapp templates integrated with
algob- the best way to start building dapps with Algorand! (more about it below).
This release comes with lot stabilization and
algob API completeness.
- Full TEALv2 and Algorand transaction processing in
@algo-builder/runtime. This allows anyone create dapp unit and integration tests. Check our example projects to see how you can start testing your smart contracts.
- Added new function
signLogicSigMultiSigto sign logic signature using multisig (greatly improves multisig UX).
- Updated ASA deployment (
deployASAfunction) to pass custom params and save deployed asset definition in checkpoint.
executeTransactionto support optIn methods in a transaction group.
New opt-in functions and updates. Check the deployer API for information about all opt-in functions.
deployer.optInare now available both in DEPLOY mode to RUN mode.
deployer.optIn*functions to support ASA by ID. Previously we only accepted ASA by name (based on the name in
deployer.optInLsigToASAto easily opt-in stateless smart contract (lsig) account to stateful smart contract and ASA.
execParams(transaction parameters for
executeTransaction) support ASA by name and by ID (previously only ASA ID was supported). Example.
We added new
algob test(runs mocha in project root).
algob sign-multisig --account <acc> --file <input> --out <out-file>to append user’s signature to signed multisig file using accounts managed by
algob sign-lsig --account <acc> --file <input> --out <out-file>to sign logic signature using accounts managed by
New infrastructure make jobs:
setup-private-net- creates and starts private network, setups master account and shows network status.
recreate-private-net- stops and removes the private network, and re-setup.
New smart contract templates
Our example projects got few updates and new templates:
- Permissioned Token - a powerful smart contract template for securities and ASA with restrictions. Securities may use the permissioned token mechanism to define complex compliance requirements, such as investor whitelisting and transfer restrictions. For example, only a verified, KYCed users can exchange tokens.
Last week we presented it during the Algorand Developer Office Hours. Stay tuned for more updates - we are going to provide tutorial and work more on that template.
- Stateful counter - presents how to opt in to a stateful smart contract. Other examples were updated as well.
We created a new repository with dapp templates. It’s a new project line of Algo Builder. Dapp Templates are webapps operating on Algorand blockchain with
algob support. For the moment we only have React templates. The templates provide developers a headstart in building dapps.
You can quickly bootstrap an new project using one of the templates using:
algob unbox-template <name> <destination>
Check in your template!
We hope that community members will contribute new templates or improve the existing ones by creating a pull request to the https://github.com/scale-it/algo-builder-templates repository.
The JS-SDK team finally released the TypeScript version of the SDK. With that we are deprecating our TypeScript type definitions:
For the next release we are working on TEALv3 support - that will allow you to create test suites targeting TEALv3. We are also planning to provide full integration with the Reach language. In the following release we will work on more smart contract templates (such us DAO, Bond Token, Unique NFTs) as well as more examples and patterns around Permissioned and Security Tokens.
Finally we will continue working on Dapp templates and want to encourage more developers contributing webapp templates.
To start building with Algo Builder:
- Follow the installation instructions.
- Check our tutorials at developer.algorand.org.
Note: if you follow the old tutorials you will see Algorand Builder - this is the old project name.
- Leave us a message on Algorand #algo-builder Discord server.
- Post a feature request or contribute using algo-builder GitHub Issues.