OpenZeppelin Blog

Announcing OpenZeppelin 2.0 - OpenZeppelin blog

Written by Francisco Giordano | October 22, 2018

Thank you for your interest in this post! We’re undergoing a rebranding process, so please excuse us if some names are out of date. Also have in mind that this post might not reference the latest version of our products. For up-to-date guides, please check our documentation site.

A stable, audited, and fully tested package for smart contract development

Check out our step-by-step guide to OpenZeppelin-eth, the EVM package implementation of OpenZeppelin 2.0

When we first announced OpenZeppelin in 2016, smart contract security was in a crisis. Major hacks occurred every month, the same logic was being reimplemented again and again, and basic software engineering practices were not being used.

We set out to standardize what secure smart contract code should look like and to provide reference implementations of contracts commonly needed by the community. OpenZeppelin began simply, as a collection of code that was freely available online. However, a community soon formed around it, eager to experiment and build solid smart contract components.

Source: https://npm-stat.com/

In the two years that followed, we learned together and became a welcoming place for contributors and newcomers. We’re extremely happy with the success that OpenZeppelin has had, and are thankful to everyone that is a part of it.

Consolidating the Journey

Experimenting as the ecosystem evolved, the code went through many iterations. In retrospect, some ideas we tried were not the best, but the exploration process pushed important discussions forward. This set the foundations of a healthy community and codebase.

The next step in achieving OpenZeppelin’s mission is to turn the learnings and code from the past two years into a stable and reliable package. To do this, we’re happy to be releasing OpenZeppelin 2.0 with:

  • A Stable API. With the growing size and complexity of smart contract systems, such as the use of upgradeability mechanisms, developers need predictable interfaces.
  • 100% Test Coverage. Every line of code in the package is tested automatically.
  • Full Independent Audit. Read the report by Level K.
  • Tons of community love. The project now has more than 150 code contributors, with many, many more helping with issues, support and reviews.

Now hold your breath, because this release was only possible because of the contributions of many, many people from everywhere in the world, and we want to thank all of them:

@3sGgpQ8H, @Aniket-Engg, @barakman, @BrendanChou, @cardmaniac992, @dougiebuckets, @dwardu, @facuspagnuolo, @fulldecent, @glesaint, @Glisch, @jacobherrington, @jbogacz, @jdetychey, @JeanoLee, @k06a, @lamengao, @ldub, @leonardoalt, @Miraj98, @mswezey23, @pw94, @shishir99111, @sohkai, @sweatyc, @tinchoabbate, @tinchou, @urvalla, @viquezclaudio, @vyomshm, @yaronvel, @ZumZoom.

Also we would like to thank all the people who are constantly helping others in our Slack channel, the ones who have given us feedback about the release, and the ones helping us triage and discuss our GitHub issues. If you are reading this wanting to jump in and make your first free software contributions, but you are unsure of where and how, talk to us! We can help you getting started, and we could use the extra hands.

With ❤ from the maintainers team of this release. — @shrugs, @nventuro, @frangio and @elopio