Before you initiate a pull request, please read the EIP-1 process document. Ideas should be thoroughly discussed on Ethereum Research or Ethereum Magicians first.
This repository tracks ongoing improvements to Ethereum. It contains:
- The EIP status page, tracking protocols for Ethereum clients and applications
- The process document that governs how protocols are published here
For help implementing an EIP, please visit Ethereum Stack Exchange.
If you would like to become an EIP Editor, please check EIP-5069.
The goal of the EIP project is to document standardized protocols for Ethereum clients and applications and to document them in a high-quality and implementable way.
The canonical URL for an EIP that has achieved draft status at any point is at https://eips.ethereum.org/. For example, the canonical URL for EIP-1 is https://eips.ethereum.org/EIPS/eip-1.
Consider any document not published at https://eips.ethereum.org/ as a working paper. Additionally, consider published EIPs with a status of "draft", "review", or "last call" to be incomplete drafts, and note that their specification is likely to be subject to change.
All pull requests in this repository must pass automated checks before they can be automatically merged:
- EIP-Bot determines when PRs can be automatically merged 1
- EIP-1 rules are enforced using
eipw
2 - HTML formatting and broken links are enforced using HTMLProofer2
- Spelling is enforced with CodeSpell2
- False positives sometimes occur. When this happens, please submit a PR editing .codespell-whitelist.
- Markdown best practices are checked using markdownlint2
It is possible to run the EIP validator locally:
cargo install eipv
eipv <INPUT FILE / DIRECTORY>
-
Open Terminal.
-
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.
-
Install Bundler:
gem install bundler
-
Install dependencies:
bundle install
-
Bundle assets and start the server:
bundle exec jekyll serve
-
Preview your local Jekyll site in your web browser at http://localhost:4000.
More information on Jekyll and GitHub Pages here.