print("Algokit v2, happy technology")
On March 29th 2023 I was given the honor of announcing to our mighty community and the broader industry, the release of AlgoKit v1.
364 days, over 50 releases spanning across 5 different repos, an automated testnet dispenser and a vscode debugger later, guess what time it is again?
With AlgoKit 2.0 we are bringing native Python to blockchain development, giving the millions of Python developers an easy onramp to the world of decentralized computing.
Python is here
With the release of AlgoKit 2.0 we introduce the capability to write pure, semantically normal Python smart contracts. This is a tectonic shift. We’re evolving from using pythonic bindings to call and generate TEAL instructions (pyTEAL) to writing apps directly for the AVM in regular Python. The initial feedback gathered from the developer preview has been great and some have also started writing about their journey with Python, X user @alexander_codes has written many articles documenting his progress with the language and you can read them here, according to broader dev feedback this evolution to Python makes Algorand smart contract development much easier, broadening the scope of what developers can achieve within the same amount of time. Benefits of our effort to adhere to Python semantic compatibility (unlike other pythonic languages in the blockchain industry) are that basic tooling (syntax highlighting, linting) work out of the box, many more will become apparent when we release native python unit testing later this year, you can follow the progress here. On behalf of the AlgoKit and MakerX (our technical partners on the AlgoKit project) teams, we’re truly excited to see what Python will enable developers to achieve.
Use AlgoKit, wherever you want
As part of the v2 effort we heavily reworked the core templating engine that powers AlgoKit, this yields multiple benefits, for template builders, all of our templates stem from a monorepo, this gives way stronger starting points. For developers: you don’t need to install AlgoKit to use AlgoKit, all templates are now compatible with GitHub codespaces, so whether you’re having to fix something from a friends’ machine or you’re struggling with setting up Docker, you can now write smart contracts needing only a GitHub account and an internet connection.
Workspaces & Command Orchestration
By default all new AlgoKit projects work within a “workspace” structure.
Workspaces are designed to seamlessly manage multiple related projects under a single root directory. This yields many opportunities, you can prototype your side project starting with a clean smart-contract template and then, if the idea picks up steam, you can now initialize an AlgoKit front-end template at the project root and link those two up and your project will now behave just like a full-stack template. docs
Puya Compiler
The Puya compiler is a more forward-looking initiative, this project is what enables the Python -> AVM magic to happen. We’ve built it so that it is easy to integrate new languages, and with more languages being worked on all optimizations to the compiler itself will propagate to every language by default.
If you’re eager to start building with Python and AlgoKit, get started here. When you have everything setup consider joining one of our many bootcamps, following the AlgoDevs youtube channel, read through the full AlgoKit documentation or Python documentation, or going through our example smart contracts
I truly hope you’ll enjoy using AlgoKit and Python as much as we’ve enjoyed building it for you.
Let’s go AlgoFam!