How to work with Tezos
A blockchain developers’ guide
At Cryptonomic, we spend a lot of time thinking about how to make blockchain development more accessible to a broader population of developers, but also how to make it easier to manage for those already working in this space. Blockchain development is complex on a good day, but given that the space is still in its infancy, even ten years on, end-to-end developer experience is still lagging other paradigms.
The Tech Stack
To address these deficiencies, specifically for Tezos, we developed Conseil and ConseilJS. The former is an open-source chain indexer written in Scala with a flexible query API and support for analytics. The latter is a Typescript library for connecting to Conseil and Tezos nodes in a consistent way, also open-source, this library aims for trustless interaction with the blockchain. You can read more about Conseil in an earlier article, but the important feature in this context is that it exposes a REST API for fast chain data retrieval with complex predicates and aggregations.
Another thing we’re excited about is SmartPy built by Smart Chain Arena. It’s a fully integrated development environment for smart contract composition on Tezos. Not only can you compose your code in a friendly, popular syntax, but you can also test it and deploy it, all from a single interface. SmartPy uses ConseilJS for trustless contract deployment and interaction.
With Conseil and ConseilJS we build several products. Tezori / Galleon is one of the top consumer wallets for Tezos. Arronax is not just a block explorer that provides rudimentary views of on-chain entities, but a reporting and analytics tool that supports sophisticated queries and aggregations. Finally, Mininax is a simple explorer that pairs with Galleon to provide transaction status.
As much as these tools are aimed at people using the Tezos chain, they are also useful to developers. Arronax provides a way to research chain data and debug dApps. Galleon can be used to deploy and test contracts. Mininax is delightfully retro.
One thought comes to mind when thinking about the progress the Tezos ecosystem has made: we have moved from developing for Tezos to developing on Tezos. There is now enough stuff that the platform can be not only useful, but also easy to use for anyone.
- Conseil (docs) – Tezos blockchain indexer and REST API.
- ConseilJS (docs) – A Typescript library for Conseil and Tezos node interactions. There are also HTML and React/Electron samples.
- TezosKit – Native iOS library by Keefer Taylor to interact with the Tezos platform, including Conseil support.
- ConseilPy – A Python library with functionality to interact with Conseil and Tezos nodes. This code comes from Baking-Bad.
- SmartPy – A smart contract IDE for Tezos from Smart Chain Arena.
- Kiln – Created by Obsidian Systems, it is a slick interface for running a Tezos node for baking.
There is also a growing set of smart contract samples that come with complete code and interaction examples in ConseilJS.
To be able to use all of this stuff immediately, get in touch with us on the Riot developer channel. We will provide access to test infrastructure so that you can concentrate on building your product not figuring out how to run and maintain blockchain nodes.
We are passionate about the products and libraries we create, if you have questions, we are always happy to help.