The Truffle project is a set of tools that offers developers the possibility of creating sustainable and professional applications on the blockchain network; for this, they make use of the Ethereum Virtual Machine (EVM), which is an environment that allows developers to create smart contracts and applications on the Ethereum blockchain.

The history of the Project

The project began in 2015 when Tim Coulter published a set of programming tools, resulting from his experience working as a developer on the Ethereum blockchain and ConsenSys; this project was given the name of Truffle ( truffle in Spanish). The project begins with developing a set of scripts to facilitate the process of developing applications on the blockchain and has evolved to become a popular tool for developing applications that move on the network. Truffle provides a platform or means for developers to build, examine, implement and automate the workflow for DApps (decentralized applications) based on the Ethereum blockchain.

What are Truffle’s goals?

Its main objective is to provide a development environment on a blockchain that helps developers create DApps and Ethereum smart contracts. Truffle provides an asset pipeline and testing framework, making the application development process a simple and automatic process for this network. As the platform evolves, the Truffle developer team adds more tools and features to the environment. Hence, developers have what it takes to build, test, and simulate tasks to improve their applications before putting them to work available to users.

Likewise, the platform minimizes the inconveniences that arise in smart contracts tests, which are generally developed using its own programming language: Solidity. That is why Truffle allows its developers to carry out these tests on the EVM to solve problems in testing and implementing projects on the Ethereum network, especially in those projects with many contracts.

Truffle Suite

The development environment of this tool is made up of three fundamental parts:

  • Truffle: It is a development tool capable of testing and implementing projects; hence its popularity has grown, reflected by the increase in downloads from the respective repositories.
  • Ganache: It is a local blockchain simulator that allows replicating blockchain networks or testing contracts.
  • Drizzle: This is a FrontEnd development library that can be connected to data from a smart contract.

This set of tools make up the Truffle suite, which is used to perform a series of operations, such as:

  • Automated contract testing.
  • Integrated support to compile, implement, and linking smart contracts.
  • Network and package management, allowing web and console applications.
  • Instant asset rebuilding during development.

As you can see, with the Truffle suite, you have a development environment based on the Ethereum blockchain, allowing the development of DApps, compiling and implementing contracts, placing them in the web application, creating FrontEnds for DApps and testing.

Truffle and its tools

In the Truffle suite, you can add other tools that help them work of developers in the creation and optimization of applications; these components or tools are:

  • Ganache: It is a personal Ethereum blockchain used to test smart contracts, develop applications, run tests, and any other task at no additional cost (since it runs within a local server).
  • Drizzle: It is a compilation of libraries in which a set of functions used in creating a FrontEnd is grouped in a simple and better way for Ethereum DApps.

A truffle is still a necessary tool for both experienced and novice developers; It is important to note that the developer team will add more tools with innovative features, doing future work that developers do more pleasant and easy.

What do you think about this topic? Do you think Truffle simplifies the work of Ethereum developers?

If you want more information about cryptocurrencies and blockchain, you can subscribe to our newsletter and receive a free report entitled blockchain technology applications and their relationship with decentralized systems.

Image from Free-Photos via under creative commons license.

Leave a Reply

Your email address will not be published.