Let’s get right into this stuff.
The power of Dragonchain comes from the fact that its smart contracts – the things that “do things” on a blockchain (aside from simply recording a transaction) – can be written in virtually any language.
Yep. Don’t want to know Solidity? Screw Solidity.
Massive fan of smalltalk? Write smalltalk.
(Okay maybe not smalltalk, but give it a go.)
The real technical guidance here is that Dragonchain smart contracts can be written in any language that can run inside a Docker container.
Okay, so let’s talk about this very first smart contract project I’ll be working on.
Project Overview and Goals
For this project, I want to get a solid feel for how to build and deploy basic smart contracts on a Dragonchain Level 1 Business Node (to learn more about the kinds of Dragonchain nodes, I highly recommend you take the courses available on the Dragonchain Academy website).
- Learn the process for building a Docker image containing the code for a smart contract
- Learn the process for deploying a smart contract on my business node in two ways:
- Via the Dragonchain command-line tool
- Via the Dragonchain console website
- Build and deploy two smart contracts to my business node:
- A BASH script to pull and record the latest $DRGN price via the CoinMarketCap API that will run automatically on a set CRON schedule
- A simple nodejs application demonstrating basic methods and logic in a smart contract that will run when invoked via the Dragonchain SDK client
In the next post in this series, I’ll cover some more of the uber-basics of how smart contracts work on Dragonchain. Then I’ll cover how to use the DCTL command line tool to get a feel for creating and retrieving transactions manually and viewing them with a simple block explorer tool. Then we’ll get directly into my goals above.
Goal #1 is admittedly pretty basic, but as I’ve mentioned, I’m a little behind the times in some things. In the next post, I’ll cover the uber basics of using Docker and Docker Hub, but there are better tutorials on that, I’m sure, available virtually anywhere else.
In the next post, I’ll aim to cover the two deployment methods and the first smart contract listed above, then cover the second contract in the next post.
This is an experiment! Let me know if you like how I’m breaking things down as we go along. I can always tweak the process (and probably will anyway).
Until next time,