Add-ons/Projects/API

From MozillaWiki
Jump to: navigation, search

This is planning or roadmap for the AMO API.

Goals

Produce a good API for AMO. Why?

  • To support a wide range tools and uses for AMO.
  • To support new projects to rewrite AMO.
  • To provide a clear interface between tools and the main server.
  • To remove a whole pile of technical debt and produce a fast, lightweight (and hopefully less complex) base for AMO.

How

Using DRF.

Roadmap

High level road map is something like:

  • all the APIs needed for a "view interface" are written: viewing add-ons, installing, searching etc.
  • all the APIs needed for a "developer interface" are written: uploading, editing
  • all the APIs needed for a "reviewer application" are written
  • all the rest
  • delete everything that's not an API.

Code Quality

  • all the standard PEP8 stuff
  • use factory boy?
  • all APIs should be in a standard directory?
  • don't use cache-machine, queryset-transform...
  • ...

Although this order might be a bit more complicated.