Skip to content
New Standard for Ethereum Token
JavaScript Solidity Shell
Branch: devel
Clone or download
ssteiger and 0xjac userData -> data
better fit to current ERC777 spec
Latest commit c0ea56a Feb 9, 2019
Type Name Latest commit message Commit time
Failed to load latest commit information.
.circleci Update to solidity 0.4.24, truffle as dev dep Nov 4, 2018
contracts userData -> data Apr 4, 2019
logo Add logos Mar 6, 2018
migrations Add missing license headers May 6, 2018
scripts Adapt tests to use Solidity-Coverage May 8, 2018
test Update to solidity 0.5.3 Apr 4, 2019
.eslintrc.js Add missing license headers May 6, 2018
.gitattributes Add solidity language Mar 28, 2018
.gitignore Adapt tests to use Solidity-Coverage May 8, 2018
.solcover.js Update to ERC1820 Apr 4, 2019
.soliumignore switch to solium Nov 4, 2018
.soliumrc.json switch to solium Nov 4, 2018 s/jacquesd/0xjac/g Mar 8, 2019
LICENSE Add MPL 2.0 license Jan 12, 2018 s/jacquesd/0xjac/g Mar 8, 2019 Update EIP text Mar 8, 2019
package-lock.json Update to solidity 0.5.3 Apr 4, 2019
package.json Cleanup npm scripts Apr 4, 2019
truffle-config.js Update to solidity 0.5.3 Apr 4, 2019


Build Status Coverage License npm version npm downloads Solidity version EIP logo

A New Advanced Token Standard for Ethereum

This standard defines a new way to interact with a Token Contract. This standard takes advantage of ERC820.

⚠️ This code has not been reviewed or audited. ⚠️

Please review all the code you use in your token-related project including the code provided here. The code here is provided "as is" without warranty of any kind and The authors are not liable as mentioned in the license.


The official proposal can be found at:

The original submission with discussion can be found at: ethereum/eips/issues#777 (initial pull request: ethereum/eips/issues#907).

You can suggest improvements to the reference implementation by submitting pull requests to this repository with modifications to

For suggestions related to the standard, please comment on the original submission at: ethereum/eips/issues#777


A copy of the specification can be found in this repository at

Reference Implementation

The reference implementation is available at: contracts/examples/ReferenceToken.sol

This repository including the specification and the reference implementation can be installed via npm with:

npm install erc777


The logo MUST NOT be used to advertise, promote or associate in any way technology – such as tokens – which is not ERC777 compliant.

The official logo for the standard can be found in the official EIPs repository at: /ethereum/EIPs/assets/eip-777/logo.
Copies of the logo are provided here as well as a courtesy and can be found in the logo folder in svg and png formats.

Variations exist in 5 colors as follow:

Color beige white light grey
dark grey
Hex #C99D66 #FFFFFF #EBEFF0 #3C3C3D #000000

Thanks to Samantha Rosso @Sauuman for creating the logo.


The standard definition as defined in and the official logo are placed in the public domain via CC0.

Apart from the standard definition (in and the logo, the content of this repository is licensed under the Mozilla Public License ("MPL") 2.0, also included in this repository in the LICENSE file.


You can’t perform that action at this time.