This is planning or roadmap for the AMO API.
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.
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.
- 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.