Skip to content

censortracker/censortracker

Repository files navigation

Build Netlify CodeFactor Chrome Web Store Mozilla Add-on

Censor Tracker is a censorship circumvention extension for Google Chrome and Mozilla Firefox.

English | Russian

Features

Censor Tracker provides a lot of useful features, here are the most important:

  • Configurable proxy
  • Country-specific proxying
  • Custom proxying list
  • Censorship-resistant itself
  • Warns about websites that transfer data to third parties

Permissions

Censor Tracker requires the following permissions:

  • alarms to support periodic tasks
  • activeTab to detect IDO websites
  • management to be able to detect permission conflicts
  • notifications to show notifications
  • proxy to configure and use Censor Tracker proxy servers
  • scripting to inject content scripts into websites
  • storage to save preferences
  • unlimitedStorage to save the database of blocked websites
  • webNavigation for handling requests
  • http://*/* and https://*/* to proxy any website, retrieve the list of proxy servers, and detect the user's country

Requirements

Censor Tracker works with following versions of browsers:

  • Mozilla Firefox 98 or higher
  • Chromium (Google Chrome, Brave, Edge, Opera etc.) 94 or higher

Development

Prerequisites

Make sure you have required versions of node and npm, which are:

  • node v17.4.0 or higher
  • npm 8.3.1 or higher

Optionally, you may like:

The build was tested only on the following operating systems:

  • Ubuntu 19.10
  • macOS Catalina v10.15.7

We don't guarantee that Censor Tracker will work on outdated versions of browsers, so make sure you're using the latest ones.

We've tested Censor Tracker on the following versions:

  • Mozilla Firefox 98 or higher
  • Google Chrome 94 or higher

Installation

Firstly, you will need to install dependencies:

~ npm install

Now you can build an extension for Chrome like this:

~ npm run build:chrome
~ cd dist/chrome

and for Firefox, like this:

~ npm run build:firefox
~ cd dist/firefox

Troubleshooting: If you're getting error on building an extension using npm, please make sure that your shell supports per-command environment variables (i.e something like this NODE_ENV=production npm run build:firefox:prod)

Going to production

You can build a production version of the extension for Chrome like this:

~ npm run build:chrome:prod
~ npm run release:chrome
~ cd release/chrome

and for Firefox like this:

~ npm run build:firefox:prod
~ npm run release:firefox
~ cd release/firefox

License

Censor Tracker is licensed under the MIT License. See LICENSE for more information.