Truffle

What is Truffle?

Truffle is a world class development environment, testing framework and asset pipeline for Ethereum, aiming to make life as an Ethereum developer easier. With Truffle, you get:

  • Built-in smart contract compilation, linking, deployment and binary management.
  • Automated contract testing for rapid development.
  • Scriptable, extensible deployment & migrations framework.
  • Network management for deploying to any number of public & private networks.
  • Package management with EthPM & NPM, using the ERC190 standard.
  • Interactive console for direct contract communication.
  • Configurable build pipeline with support for tight integration.
  • External script runner that executes scripts within a Truffle environment.

TRUFFLE FEATURES

BUILT-IN SMART CONTRACT COMPILATION, LINKING, DEPLOYMENT AND BINARY MANAGEMENT

Truffle takes care of managing your contract artifacts so you don’t have to. Includes support for custom deployments, library linking and complex Ethereum applications.

AUTOMATED CONTRACT TESTING FOR RAPID DEVELOPMENT

Bring your dapp development to the 21st century. Write automated tests for your contracts in both JavaScript and Solidity, and get your contracts developed quickly.

SCRIPTABLE DEPLOYMENT & MIGRATIONS FRAMEWORK

Write simple, manageable deployment scripts that acknowledge your application will change over time. Foster your dapp’s evolution and ensure you can maintain your contracts far into the future.

NETWORK MANAGEMENT FOR DEPLOYING TO BOTH PUBLIC & PRIVATE NETWORKS

Don't manage network artifacts ever again. Let Truffle do it for you, and put your focus on dapp development where it belongs.

ACCESS TO HUNDREDS OF EXTERNAL PACKAGES

Pull in hundreds of smart contract dependencies from NPM and EthPM to have your code stand on the shoulders of giants.

CONTRIBUTING TO TRUFFLE

We need your help! There are many ways you can help contribute to the Truffle project. Here are some ways that you can contribute:

  1. Open issues in our GitHub project
  2. Submit Pull Requests to the GitHub project - but please open an issue to discuss the feature first!
  3. Test out the Beta versions of Truffle to help us nail down issues and stomp bugs.
  4. Participate in our community Gitter channel and help out your fellow Trufflers.