Skip to content

Iterate Faster with Truffle Teams

Consider the amount of context switching required to develop a dapp: you’re writing Solidity one minute, writing tests another, debugging those results--it’s easy to get lost! These switches carry a cognitive load and when errors equal a loss of ETH we need all the help we can get. I’m happy to inform you Truffle Teams can help reduce context switching and help you or your team iterate faster.

Truffle Teams has reached a very important stage in its life: it now provides a complete workflow including building, testing, managing, monitoring, and debugging. This means you’re getting a huge boost in productivity. This amounts to a more robust workflow for you and/or your team and contributes to the application lifecycle generally by tightening the feedback loop between deployment, operation, and debugging all within a flexible development network.

The development lifecycle: plan, code, build, test, release, deploy, operate, and monitor.
The development lifecycle.

Up to this point, Truffle Teams has already offered a builds system, deployment manager, blockchain sandboxes, and monitoring. Recently we released a visual debugger into early access. With that, we’d like to highlight two features that completed this cycle: the Debugger and the Contract Manager.

For a great video example, check out our demo from TruffleCon 2020. We briefly touch all the phases talked about above using a rock, paper, scissors game. For something more long-form, check out our 5-part webinar series walking you through using the Truffle suite to create an NFT and trade it on a decentralized marketplace.

The video thumbnail for Josh Quintal and Mike Seeses demo of Truffle Teams at TruffleCon 2020.
Mike Seese and Josh Quintal go over the entire development lifecycle using Truffle Teams for a decentralized rock, paper, scissors dapp.

Debugger Enhancements

Note: To use the debugger right away, you'll need to opt-in to Truffle Teams Early Access.

Truffle offers a sophisticated forensic transaction debugger and allows you to extract the most information and context possible from your transactions. We released a graphical version of our command line debugger into Truffle Teams Early Access in December. Since then we’ve added syntax highlighting and breakpoints for an improved developer experience. Readability increases and you control where execution stops, providing a precision debugging experience. Check out the Truffle Teams debugger docs to learn more about breakpoints. Currently the debugger in Truffle Teams only works for sandbox environments, but we plan on supporting public networks next!

The Truffle Teams debugger working on an NFT-based badge contract
The Truffle Teams Debugger--now with syntax highlighting and breakpoints!
## The Contract Manager

Note: To use the contract manager right away, you'll need to opt-in to Truffle Teams Early Access.

Truffle Teams’ Contract Manager generates a UI for interacting with all the functions of your smart contracts, as well as a live state tree so you can quickly see the changes propagated by those functions. If you’re familiar with Remix, you’ll feel right at home here.
The Truffle Teams Contract Manager using an NFT-based badge contract
The Contract Manager; shown here using an NFT badge.
The Contract Manager is great for quick demos, integration tests, and a faster, all-GUI debugging workflow. For example, you can deploy to a sandbox via the deployment wizard, hop over to the contract manager to fire off a few transactions, and finally debug these transactions from the monitoring screen. ## Dapp Topography Going forward, we’ll be helping you understand your dapp on an even deeper level, offering forensic-level analysis of your transactions. Not only that, but it will be able to diagram contract interaction to allow different stakeholders to participate in the debugging process. For example a product manager, or other domain expert can participate in the forensic analysis. These diagrams and other assets can be shareable media that can fit into existing communication channels.
Plant UML diagram of an ENS transaction
A test in which a user who isn't the owner of an ENS name attempt to change the resolver. Note the "X" shoing the revert.
## Get Started with Truffle Teams We want Truffle Teams to be the most effective DevOps tool in the blockchain space for both new and existing teams. Check out Truffle Teams today and let us know what you think about the new deployment views and contract manager, or if your team has other needs we haven’t met yet. Thanks! _Josh Quintal, Head of Product & Marketing_