Difference between revisions of "Create a browser extension (GSoC task)"

From Software Heritage Wiki
Jump to navigation Jump to search
(Add missing required info)
Line 17: Line 17:
 
This extension/bookmarklet would, for example, show an icon next to the URL bar to show the status of the currently visited repository;
 
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.
 
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: easy
  
 
== Desirable skills ==
 
== Desirable skills ==

Revision as of 07:13, 25 February 2022

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: easy

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)