To submit a MetaMask Improvement Proposal (MIP), follow these steps:
Create a fork of the MetaMask Improvement Proposals repository on GitHub. This will provide you with a personal copy of the repository where you can make changes and prepare your proposal.
In your forked repository, create a new branch named after your proposal. For example, if your proposal is about adding a new feature called "FeatureX", you can name the branch add-featurex.
Using the provided MIP template, prepare your proposal. Make sure to include all the required information, such as:
Proposal title Author(s) Status (draft, review, etc.) Date of submission Summary Motivation Specification Rationale Backwards Compatibility Test Cases Implementation
Please ensure that your proposal is clear, concise, and well-structured to facilitate discussion and evaluation.
Save your proposal as a Markdown file (.md) in the MIPs folder of your branch. Name the file using the following format: mip-x.md, where x is a unique identifier for your proposal. This identifier will be assigned by the MIPs maintainers once your proposal has been reviewed and accepted as a draft.
Commit your changes with a descriptive commit message and push the changes to your forked repository on GitHub.
From your forked repository, create a pull request targeting the main branch of the MetaMask Improvement Proposals repository. In the pull request description, provide a brief summary of your proposal and a link to the proposal file in your repository.
After submitting your pull request, engage in discussions with the community and the MetaMask team. Address any feedback, questions, or concerns raised during the review process. Update your proposal as needed based on the feedback received.
Once your proposal has undergone thorough discussion and review, the MetaMask API Maintainers will decide on the next steps, which may include further revisions, approval, or rejection of the proposal. If your proposal is approved, it will progress through the MIPs workflow until it reaches the "Implemented" stage.