No Description

Nicolás Venturo 70e616db7c Optimized ERC721 transfers. (#1539) 6 years ago
.github 5c228805ad Update issue templates (#1376) 7 years ago
audit 6d8bb497c8 removing trailing whitespace 8 years ago
contracts 70e616db7c Optimized ERC721 transfers. (#1539) 6 years ago
migrations 0e5799c93b Clean up npm package (#904) 7 years ago
scripts 524a27674c ci: trigger docs update on tag (#1186) 7 years ago
test 70fd243e3b Test setup helper added (#1482) 6 years ago
.editorconfig ae2980b072 Add EditorConfig (#1119) 7 years ago
.eslintrc 714ab21a6e Added mocha-no-only ESlint plugin. (#1529) 6 years ago
.gitattributes ad5edd329f feat: add solidity syntax highlighting directive, fixes #671 7 years ago
.gitignore 0047e79681 ignore truffle generated file (#1019) 7 years ago
.node-version 846b0714ad feat: remove yarn in favor of npm 7 years ago
.solcover.js 1455a5a942 Re-enable solidity coverage 7 years ago
.soliumignore 6d8bb497c8 removing trailing whitespace 8 years ago
.soliumrc.json 5471fc808a Updated code style to 4 space indentation and 120 characters per line. (#1508) 6 years ago
.travis.yml 21ed6bee25 Travis migration (#1517) 6 years ago
CODE_OF_CONDUCT.md 4575a240f7 Create CODE_OF_CONDUCT.md (#1061) 7 years ago
CODE_STYLE.md 03dfb2965c Improve encapsulation on ERC165 and update code style guide (#1379) 7 years ago
CONTRIBUTING.md 5db0d7d1a0 included command to add upstream (#959) 7 years ago
LICENSE 6d8bb497c8 removing trailing whitespace 8 years ago
README.md 21ed6bee25 Travis migration (#1517) 6 years ago
RELEASING.md f72c79d54a Add the step to delete the build dir to the RELEASE notes (#1467) 7 years ago
ethpm.json 06e265b38d Release v2.0.0 7 years ago
logo.png 904b41ec79 Improve README (#1309) 7 years ago
package-lock.json b7d56d5471 Added explicity pify dep, deprecating web3.eth. (#1532) 6 years ago
package.json b7d56d5471 Added explicity pify dep, deprecating web3.eth. (#1532) 6 years ago
truffle-config.js e7d6e86395 Make Truffle provider creation lazy (#1526) 6 years ago

README.md

OpenZeppelin

NPM Package Build Status Coverage Status

OpenZeppelin is a library for secure smart contract development. It provides implementations of standards like ERC20 and ERC721 which you can deploy as-is or extend to suit your needs, as well as Solidity components to build custom contracts and more complex decentralized systems.

Install

npm install openzeppelin-solidity

If you're interested in trying out a preview of OpenZeppelin 2.0, install openzeppelin-solidity@next, check out the release notes, and let us know what you think!

Usage

To write your custom contracts, import ours and extend them through inheritance.

pragma solidity ^0.4.24;

import 'openzeppelin-solidity/contracts/token/ERC721/ERC721Full.sol';
import 'openzeppelin-solidity/contracts/token/ERC721/ERC721Mintable.sol';

contract MyNFT is ERC721Full, ERC721Mintable {
  constructor() ERC721Full("MyNFT", "MNFT") public {
  }
}

You need an ethereum development framework for the above import statements to work! Check out these guides for Truffle or Embark.

On our site you will find a few guides to learn about the diferent parts of OpenZeppelin, as well as documentation for the API. Keep in mind that the API docs are work in progress, and don’t hesitate to ask questions in our Slack.

Security

OpenZeppelin the project is maintained by Zeppelin the company, and developed following our high standards for code quality and security. OpenZeppelin is meant to provide tested and community-audited code, but please use common sense when doing anything that deals with real money! We take no responsibility for your implementation decisions and any security problems you might experience.

The core development principles and strategies that OpenZeppelin is based on include: security in depth, simple and modular code, clarity-driven naming conventions, comprehensive unit testing, pre-and-post-condition sanity checks, code consistency, and regular audits.

Please report any security issues you find to security@openzeppelin.org.

Contribute

OpenZeppelin exists thanks to its contributors. There are many ways you can participate and help build high quality software. Check out the contribution guide!

License

OpenZeppelin is released under the MIT License.