Command-line-friendly tools for blockchain development
We believe that the free software movement is the most important cultural predecessor to the modern-day renaissance in decentralized technologies.
To catalyze the growth of this ecosystem, and to empower hackers to participate, we’re building a comprehensive suite of blockchain-oriented developer tools in the spirit of the Unix philosophy.
Dapp is all you need to start developing for Ethereum. It creates new dapps, runs Solidity unit tests, debugs, deploys, launches testnets, and more.
Seth is a handy tool for slicing and dicing transactions, querying the blockchain, converting between data formats, performing remote calls, and other everyday tasks.
Hevm is our own EVM
implementation with a nimble terminal-based Solidity debugger.
It’s used for dapp test
and dapp debug
.
Setting up the DappHub toolkit
Dapptools requires Nix, so make sure you have it installed first. After that, you can take advantage of our one-line installer.
$ curl https://dapp.tools/install | sh
This script downloads the latest version of dapptools, sets up a binary cache using Cachix and installs our most used tools.
Manual installation
We recommend using the Nix package manager. It works on Linux and OS X and is self-contained and unobtrusive.
$ curl -L https://nixos.org/nix/install | sh $ . "$HOME/.nix-profile/etc/profile.d/nix.sh" $ nix-env -iA dapp hevm seth solc -if https://github.com/dapphub/dapptools/tarball/master --substituters https://dapp.cachix.org --trusted-public-keys dapp.cachix.org-1:9GJt9Ja8IQwR7YW/aF0QvCa6OmjGmsKoZIist0dG+Rs=
Our post “Dapp tools and the Nix package manager” explains what makes Nix special and why we chose it for our tools.
Quick intro to working with the dapp tools
You can get started with dapp development very easily:
$ mkdir example $ cd example $ dapp init $ vi src/example.sol $ dapp test $ dapp debug
For details about the dapp
command,
see dapp.tools/dapp.
We build infrastructure for the next generation of the internet
DappHub is a self-organizing network of logicians, researchers, designers and developers spread out across the globe.
Our network is always growing. If you want to join, just come to our chat room and introduce yourself.
Safe, simple, flexible building-blocks for Ethereum contracts
We also maintain Dappsys, an audited collection of smart contract building blocks designed to complement each other. They include;
ds-token
—
a generic EIP-20 coin;
ds-group
—
a multisig;
ds-guard
—
a flexible authority rule;
ds-proxy
—
a transaction proxy; and
ds-cache
—
a store of expiring values.
Using these proven parts lets us focus on the novel features of the systems we develop. We share Dappsys to benefit the smart contract ecosystem.