Giter VIP home page Giter VIP logo

dapptools's Introduction

Dapp tools by DappHub Chat

Hello!

This repository contains the source code for several Ethereum tools hand-crafted and maintained by DappHub, along with dependency management, courtesy of Nix.

Contents:

  • Dapp - all you need Ethereum development tool. Build, test, debug & deploy solidity contracts.
  • Seth - Ethereum CLI. Query contracts, send transactions, follow logs, slice & dice data.
  • Hevm - Ethereum evaluator. Fully complient Haskell EVM implementation.
  • Ethsign - sign Ethereum transactions from a local keystore.

Easy install

All tools and dependencies can be automaticaly installed by running:

curl https://dapp.tools/install | sh

You may also need to add the nix binaries to your path:

export PATH="$PATH:$HOME/.nix-profile/bin"

Manual install

For a manual install, please follow the instructions below.

Install Nix

Make sure you are using Nix v2

curl https://nixos.org/nix/install | sh

# Run this or login again to use Nix
. "$HOME/.nix-profile/etc/profile.d/nix.sh"

Setup Cachix (optional)

If you want to cache the binary builds across several computers, Nix provides several ways of doing this, the most convenient being the Cachix service.

We maintain a public cache which you can use by installing Cachix

nix-env -if https://github.com/cachix/cachix/tarball/master --substituters https://cachix.cachix.org --trusted-public-keys cachix.cachix.org-1:eWNHQldwUO7G2VkjpnjDbWwy4KQ/HNxht7H4SSoMckM=

then running

cachix use dapp

followed by restarting your Nix daemon (if on a multi-user Nix installation)

Install tools

To install tools from this repository, you need to run

git clone --recursive https://github.com/dapphub/dapptools $HOME/.dapp/dapptools
nix-env -f $HOME/.dapp/dapptools -iA dapp seth solc hevm ethsign

which will build and install these tools into your Nix profile, optionally fetching the binaries from the cache if you have configured it.

Installing custom solc versions

For a list of the supported solc versions, check ./nix/solc-versions.nix.

You can specify a solc version to run within dapp with dapp --use solc:x.y.z test, but you can also install solc "standalone" (i.e. add it to your $PATH) with:

   $ nix-env -f $HOME/.dapp/dapptools -iA solc-versions.solc_0_5_0

Versions of solc that haven't yet landed in nixpkgs can be found under the unreleased key: solc-versions.unreleased.solc_x_y_z. Again, refer to ./nix/solc/versions.nix for a list of supported unreleased versions.

NOTE: not all versions are supported on macOS platforms.

Contributing

Instructions for adding new versions of solc can be found at nix/solc-updates.md


built with nix

dapptools's People

Contributors

mbrock avatar dbrock avatar rainbreak avatar asymmetric avatar nanexcool avatar mrchico avatar desaperados avatar livnev avatar apmilen avatar mesozoic-technology avatar incertia avatar brianmcmichael avatar icetan avatar d-xo avatar gbalabasquer avatar cmditch avatar xwvvvvwx avatar jasagredo avatar travs avatar r001 avatar eiabea avatar ggrieco-tob avatar jumutc avatar endorphin avatar ana0 avatar alexisgauba avatar wjmelements avatar rstormsf avatar teghnet avatar nmushegian avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.