Page MenuHomeSoftware Heritage

Implement a prototype for the Web API with the Django REST framework
Closed, MigratedEdits Locked

Description

Django REST framework is a powerful and flexible toolkit for building Web APIs.

In order to use a single Python Web framework in SWH components, the Web API should be rewritten using the Django REST framework (http://www.django-rest-framework.org/) instead of Flask.

The main advantages of the Django REST framework compared to Flask are:

  • automatic genration of Web browsable API.
  • support for Authentication policies including packages for OAuth1a and OAuth2.
  • serialization that supports both ORM and non-ORM data sources.
  • customizable all the way down - just use regular function-based views if you don't need the more powerful features.
  • extensive documentation, and great community support.

First step to achieve that goal is to write a prototype of the SWH API using Django that will at least offer the same features as the currently available one (https://archive.softwareheritage.org/api/).

Below are some tasks related to that work :

  • create a playground git repository to host the prototype development
  • implement the prototype

Event Timeline

anlambert created this task.
anlambert added a project: Web app.

Time of playground and prototype is over now