Skip to content

API Design Review Template

Ignat Drozdov edited this page Jul 30, 2019 · 1 revision

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)

Summary

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.

Changes description

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.

Code examples

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.

Limitations

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.

Clone this wiki locally