Ethereum Improvement Proposals (EIPs)
Ethereum Improvement Proposals (EIPs) describe standards for the Ethereum platform, including core protocol specifications, client APIs, and contract standards.
Before you initiate a pull request, please read the EIP-1 process document. Ideas should be thoroughly discussed prior to opening a pull request, such as on the Ethereum Magicians forums or in a GitHub issue in this repository.
This repository tracks the ongoing status of EIPs. It contains:
- Draft proposals which intend to complete the EIP review process.
- Last Call for proposals that may become final (see also RSS feed).
- Accepted proposals which are awaiting implementation or deployment by Ethereum client developers.
- Final and Active proposals that are recorded.
- The EIP process that governs the EIP repository.
Achieving "Final" status in this repository only represents that a proposal has been reviewed for technical accuracy. It is solely the responsibility of the reader to decide whether a proposal will be useful to them.
Browse all current and draft EIPs on the official EIP site.
Once your first PR is merged, we have a bot that helps out by automatically merging PRs to draft EIPs. For this to work, it has to be able to tell that you own the draft being edited. Make sure that the 'author' line of your EIP contains either your GitHub username or your email address inside . If you use your email address, that address must be the one publicly shown on your GitHub profile.
The Ethereum Improvement Proposals repository exists as a place to share concrete proposals with potential users of the proposal and the Ethereum community at large.
Preferred Citation Format
It is possible to run the EIP validator locally:
gem install eip_validator eip_validator <INPUT_FILES>
The EIP repository contains an "auto merge" feature to ease the workload for EIP editors. If a change is made via a PR to a draft EIP, then the authors of the EIP can GitHub approve the change to have it auto-merged by the eip-automerger bot.
Check whether you have Ruby 2.1.0 or higher installed:
$ ruby --version
If you don't have Ruby installed, install Ruby 2.1.0 or higher.
$ gem install bundler
- Install dependencies:
$ bundle install
Build your local Jekyll site
- Bundle assets and start the server:
$ bundle exec jekyll serve
- Preview your local Jekyll site in your web browser at
More information on Jekyll and GitHub pages here.