You will likely agree that blockchain development has evolved and grown substantially over the past several years. Just a decade ago, there were nearly no blockchain developers nor tools for development beyond basic command line interfaces to the Bitcoin blockchain. Today, blockchain development is an increasingly important field, with growing numbers of developers coming onboard. Blockchain-based decentralized software applications, called Dapps, are the future of the space, and developers are creating exciting software applications, with the scope for future applications seemingly boundless.
Those new to blockchain development may sometimes be a bit lost or at least confused when it comes to tools used for blockchain development. With that in mind, the Bitcoin Market Journal team has put together this guide to some of the top blockchain tools for developers in 2019. We hope you get immense value from it and would be happy to have you join our open-source token project to practice your new blockchain development skills.
Here are some of the best tools around for blockchain developers today.
Ganache Overview
The first thing any blockchain developer will want is a local development blockchain, sometimes called a personal blockchain.
One highly recommended personal blockchain creator is called Ganache. With Ganache, you’ll be able to develop applications, run tests, and deploy smart contracts you’ve created. Ganache is billed as the one-click blockchain.
That’s because with one click you can fire up your own personal Ethereum blockchain. You get to control the operation of the chain as well as executing commands, inspecting state, and running a variety of tests. Check out these features:
- It comes with all the latest Ethereum features for creating modern Dapps.
- Use the built-in block explorer to examine every single transaction or block to get a detailed view of what’s occurring.
- Settings include advanced mining controls that let you set block times to suit your own development and needs.
- Get log output including all the internal blockchain information and responses necessary for debugging.
You can download Ganache for Windows here. There are also OSX and Linux version for download here. Note that the software has nearly 1,500 Github “stargazers,” or those following the repository.
To get Ganache up and running quickly, there’s a Quickstart Guide available. There’s also a more detailed guide to the command line interface (CLI) that can be viewed here.
Once you’ve got Ganache installed and your own personal blockchain created, you’ll want to jump into development. That’s where the next tool on the list comes into play.
Truffle Framework Overview
The top suite of tools for Ethereum blockchain development in 2019 is the Truffle Framework. With the Truffle Framework, you’ll get a whole suite of tools for developing smart contracts on the Ethereum blockchain.
The Truffle Framework was created to be a world-class Ethereum development environment, offering a suite of tools that makes it easier for developers to focus on development. The Truffle Framework gives all of the following functionality within one development suite:
Smart Contracts – Write and compile smart contracts in Solidity and run them on the Ethereum Virtual Machine.
Testing – Ensure your smart contracts perform as expected by writing and running tests in Solidity or Javascript. Testing scripts can be run against any network, including any public blockchain network.
Deploy and Migrate – Write a script to deploy your smart contract to any Ethereum blockchain network. Or write a script to migrate your smart contracts to another Ethereum network.
Manage Networks – Connect to your own personal blockchain or any public Ethereum blockchain network and perform management tasks.
Development Console – Use the Truffle Console to interact in a Javascript runtime environment with any smart contract on any network that’s been added within your configuration.
Script Testing – The Truffle Script Runner lets you write and execute scripts against any blockchain network included in your configuration.
Client-side Development – The Truffle Framework allows for hosting client facing applications to communicate with your publicly deployed smart contracts.
If you’re interested in taking Truffle for a test-drive, it can be downloaded here. A complete user guide from installation to creation, debugging, testing and deployment is available here. Or get up and running quickly with the Truffle Quickstart guide.
You’ll find an active community of Truffle developers at the Truffle Gitter channel, where you can ask questions and get help with anything that might not be working for you. There are nearly 5,000 Truffle users on the Gitter channel, so someone likely already encountered any problem you might run into. Finally, if you’re looking for a place for your existing software developers to transition into blockchain engineers, there’s the Truffle University.
Once you have Ganache and Truffle installed and working, you have what you need to develop on your personal network. However, if you want to move to a public network, you’ll need a wallet to manage your account on the public Ethereum blockchain. There’s a wallet included in Ganache, but there are other, potentially better options.
Mist Overview
One of these better options is Mist, which is the official Dapp browser and wallet that was created and released by the Ethereum development team.
Mist gives you a place to store your Ethereum tokens and to execute smart contracts. This full node wallet will let you interact with Dapps and deploy smart contracts as well as manage your account on the Ethereum blockchain.
One thing of note is that there are actually two parts to Mist. One is the Mist browser, which includes all the functionality you’ll need as a developer, and the other is the desktop Ethereum wallet which allows for typical wallet-based interaction with the Ethereum blockchain and functions as a full Ethereum node.
This means you’ll have to download the entire Ethereum blockchain and the wallet will sync with the blockchain every time it is launched. This can be resource-intensive as it takes up storage space on your computer, and it takes time to sync to the blockchain. You can download both Mist and the Ethereum wallet here. You can learn more about Mist from the official user guide here.
These three software packages will give you what you need to begin developing Ethereum smart contracts and decentralized applications. To start developing today, join our open-source token project where you’ll be able to create an equity token for your own project.