Background

The Open Observatory of Network Interference (OONI) is a free software project which aims to empower decentralized efforts in increasing transparency of internet censorship around the world.

OONI Explorer is an open data resource on internet censorship around the world.

Proposal

Typescript has been adopted widely as a way to write more reliable JS applications and now has a well supported toolchain and an active and growing community. We could benefit from porting parts or all of the OONI Explorer code to Typescript especially to be able to handle unpredictable data in API responses. Next.js, the underlying react framework the project is built upon, also has first-class support for Typescript. The project involves:

  1. coming up with a strategy to incrementally port the codebase
  2. ensuring integration with other projects in ooni-components
  3. rewrite code
  4. writing unit tests for critical react components in the projects
  5. improve build process to leverage typescript features
  • Prerequisites: Experience in Typescript, nice to have knowledge of Next.js

Resources