Is there a standard way to package the source code of a smart contract and publish it on a public repository? In such a way to enable structured reuse, with versioning and easy ways to update an component. Similar to what search.maven.org for Java, bower and npm for JavaScript or PyPI for Python offers.

There's a repository of sample contracts on https://github.com/ethereum/dapp-bin and various blog posts and sites containing sample code of smart contracts. However, this doesn't solve the problem of copy&paste code and versioning.

  • 1
    Sounds like a good dApp idea ;-P – HodlDwon Jan 31 '16 at 5:49
  • @HodlDwon that already exists as dapp, see my answer. – Afr Feb 3 '16 at 10:22

There is no single standard for smart contract code sharing, but Dapple is taking a swing at being Ethereum's npm. (Full disclosure: I get paid to work on Dapple.)

| improve this answer | |

Package management via npm is available in Truffle beta: http://truffleframework.com/tutorials/package-management

A larger package standard beyond npm is in the works, which will hopefully be a collaboration between the major tool authors and the Ethereum Foundation. More details to come.

| improve this answer | |

There is the DApp-Store. I'm currently at the Berlin Ethereum meetup and it's discussed to be included some day into the mist browser.

Try the live frontier demo. Or the morden testnet demo.

Screenshot on Morden

How to use:

  • Download Mist 0.3.6 here: that's the only "browser" version.
  • Sync the blockchain with your network of your choice.
  • Create an account if you don't have one already, and transfer some Ether to it.
  • Navigate to one of the above URLs within Mist, depending on what chain you're on.
| improve this answer | |
  • 2
    Author of the dapp store here. Unfortunately the dapp store has been discontinued for now. It will likely be revived in the future. – Tim Coulter Sep 28 '16 at 18:20

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.