Starknet Improvement Proposals (SNIPs)


Starknet Improvement Proposals (SNIPs) are design documents that describe new features, improvements, and standards for the Starknet community. They include a detailed technical specification and rationale for the proposed changes and serve as the source of truth for the community.
Importance of SNIPs
SNIPs are important for the development and improvement of the Starknet ecosystem. Here are some of the reasons:
Structured Development: SNIPs provide a formal and organized process for proposing new features, improvements, and standards, ensuring thorough review and discussion before implementation.
Community Involvement: They encourage active participation from the Starknet community by allowing anyone to propose and discuss changes, leading to more robust and well-rounded development.
Transparency: The SNIP process promotes transparency in decision-making, with all the proposals and discussions publicly documented and accessible.
Quality Assurance: The review process for SNIPs checks for technical soundness, feasibility, and alignment with Starknet’s goals. This helps maintain the quality and reliability of new features and improvements.
Documentation and Standardization: SNIPs are comprehensive documentation of all proposed and implemented changes, making integration easier for developers.
Future Planning: SNIPs help shape the future of Starknet by providing a clear roadmap of proposed improvements and features, aligning and prioritizing development efforts with Starknet’s vision.
To explore existing SNIPs, stay updated on ongoing proposals, and submit your own, visit the Starknet SNIPs repository and Community Forum.
Writing a SNIP
Writing a SNIP involves following the guidelines to ensure your proposal is well-structured, clear, and ready for community review. The SNIP process is based on the Ethereum Improvement Proposals (EIPs) process. Here’s how to get started:
Review and familiarize yourself with SNIP-1
Fork the SNIPs repository
Use the SNIP template to create your SNIP.
Submit a pull request (PR) to the SNIPs repository when your draft is complete.
Your first PR should be a draft of the final SNIP and must meet all formatting criteria, especially the correct metadata in the header. An editor reviews the PR, assigns it a number, and then merges it. Make sure you include a discussions-to
header with the URL to a forum or GitHub issue for community discussions.
SNIP Life Cycle
To understand the stages your SNIP goes through from idea to finalization, check out the SNIP Life Cycle. The life cycle includes stages such as Draft, Review, Last Call, and Final, as shown in the diagram below:
SNIP Editors
SNIP editors are community members or StarkWare staff overseeing the administrative process of SNIPs. Their responsibilities include:
Ensuring correct formatting of submitted SNIPs
Maintaining the SNIPs repository
Reviewing SNIPs for technical soundness and feasibility
Gathering opinions from StarkWare core teams for protocol changes
For more details, see the SNIP Editor Responsibilities. The current SNIP editors (with their GitHub handles) are:
Abdelhamid Bakhta (@AbdelStark)
Ohad Barta (@ob1337)
Ariel Elperin (@ArielElp)
Leonardo Lerer (@leo-starkware)
Alex Tavor (@amanusk)
Dor Shaim (@dor-starkware)
Martin Triay (@martriay)
Ilia Volokh (@iliav-starkware)
Contributing and Support
Contributions are essential to the Starknet community, fostering learning, inspiration, and innovation. Your involvement benefits everyone and is greatly appreciated. Everyone is welcome to create a SNIP. Here’s how you can contribute and get support:
Create a SNIP: Anyone can propose a SNIP. Ensure it follows the guidelines in SNIP-1.
Engage with the Community: As the author, engage in discussions on the Community Forum and the Starknet Discord.
Seek Feedback: Ask for feedback from the community on the forum, Discord, or GitHub issues to refine your proposal.
Promote SNIPs: Tweet about and write articles on SNIPs you find interesting to raise awareness and encourage discussion.
Thank you for contributing! Your participation helps strengthen and grow the Starknet community and network.
Subscribe to my newsletter
Read articles from Solomon Esenyi directly inside your inbox. Subscribe to the newsletter, and don't miss out.
Written by

Solomon Esenyi
Solomon Esenyi
Docs Alchemist | Dev Whisperer | Onchain Cartographer