Create a browser extension (GSoC task)

From Software Heritage Wiki
Jump to navigation Jump to search

Introduction

As you probably know already, The Software Heritage archive can be browsed on the Web. The code powering that interface is a Django application that also implements a Web API.

Task description

When browsing a repository (on GitHub, Gitlab, ...) or a package description (on NPM, Debian), people may want to check when (and if) this repository or package was last archived in Software Heritage. Currently, this means opening the archive in a new tab, and searching for the URL, and looking at the status. Then, they can trigger a new archival with another few clicks (via the "Save Code Now" feature).

This workflow may be streamlined by the creation of a browser extension or bookmarklet. This extension/bookmarklet would, for example, show an icon next to the URL bar to show the status of the currently visited repository; and clicking it would show details (like the date of last visit) and run "Save Code Now" in just two clicks.

Expected duration

175 hours. Difficulty: medium

Desirable skills

  • Python 3 and Git are a must to work on any Software Heritage project
  • Javascript experience is also needed for this project
  • Prior experience in working with browser extensions is a plus

Potential mentors

  • Antoine Lambert (anlambert on IRC)
  • Valentin Lorentz (vlorentz on IRC)
  • Jayesh Velayudhan (jayeshv on IRC)