-
Notifications
You must be signed in to change notification settings - Fork 43
API Design Review Template
When you are ready to introduce a package modifications that result in major API changes or addition of new functionality, please start by creating a GitHub issue entitled [API DESIGN REVIEW] with the following body:
Date:
Last revised:
Author(s): (should include Github handle)
One-paragraph explanation of what the proposed feature / change is about. Objectives
Why is the feature / change necessary? Describe the different use cases. Outline why these use cases are not appropriately addressed by the current API. Give an estimation of how many users need the feature.
List and explain every API change (e.g. added classes, added methods, added arguments). Provide as much information as you can, and provide code examples if necessary. Feel free to outline several different possible design options that have you considered, instead of a single one.
Illustrate how the proposed changes allow to solve the use cases listed in the objectives section. For every use case, provide one or more code examples so that everyone can get a clear idea of how to use the new feature and whether or not it provides a delightful user experience.
Are there corner cases not covered by this proposal? Are there known issues or UX inconveniences? Do you anticipate major technical difficulties? List any potential issue and limitation here.