artemsytmad / ghostery-extension

Ghostery Browser Extension for Firefox, Chrome, Opera and Edge

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Ghostery

Build Status   GitHub manifest version   Twitter Follow

Ghostery helps you browse smarter by giving you control over ads and tracking technologies to speed up page loads, eliminate clutter, and protect your data. This is the unified code repository for the Ghostery browser extensions in Chrome, Firefox, Opera and Edge.

Downloads

FirefoxDownload

ChromeDownload

OperaDownload

EdgeDownload

Installation

Install yarn

https://yarnpkg.com/en/docs/install

Install local npm packages

$ yarn install --frozen-lockfile

Upgrade packages

# Upgrade packages according to package.json version range
# https://yarnpkg.com/en/docs/cli/upgrade/
$ yarn upgrade

Building

# Build all sources
$ yarn build.dev
# Build for production
$ yarn build.prod
# Build and watch for changes
$ yarn build.watch

Enable Debugging / Logging

// In manifest.json set
"debug": true,

Testing and Linting

# Update Jest snapshot artifacts
$ yarn test.snapshot
# Run unit tests
$ yarn test
# Run linter over the ./app and ./src folders
$ yarn lint
# Lint a specific file
$ yarn lint.raw src/utils/matcher.js
# Test i18n string lengths for panel UI
$ yarn leet
# Reset back to original en language file
$ yarn leet.reset

Build Docs

# Build JSDoc files to ./docs
$ yarn docs

Internationalization

This project is configured to use the Transifex CLI. See their documentation to get started. Note: You do not need to run tx config as the project configuration file has already been generated.

Generate a Transifex API Token link

# Configure the Transifex CLI
$ tx init
# Submit translation files to Transifex
$ tx push -s
# Download translated files from Transifex
$ tx pull -a
# Add the placeholders into the downloaded translation files.
$ node tools/transifex.js

Cliqz Source Code

Ghostery implements the following open-source products from Cliqz:

Human Web

Anti-Tracking

Ad Blocker

Building Common Libraries for Ghostery

Common libraries are pre-built and included under the ghostery-common NPM dependency in package.json. To reproduce this build process, download the appropriate Ghostery release from the ghostery-common project.

$ npm ci
$ ./fern.js build configs/ghostery.js --environment=production --no-debug

Compatibility

  • Firefox: 68+
  • Firefox Android: 68+
  • Chrome: 69+
  • Opera: 56+
  • Edge: 79+

Contribute

See CONTRIBUTING and CODE OF CONDUCT

Links

Additional Open Source Ghostery Projects

Ghostery Team

Ghostery relies on contributions from lots of talented people.

License

MPL-2.0 Copyright 2019 Ghostery, Inc. All rights reserved.

See LICENSE

Tracker Databases

The databases folder contains JSON skeletons to show the schema expected by the extension pattern matcher. See the Database README for more information. Ghostery's production tracker databases have been purposely excluded from this project, as they remain proprietary to Ghostery, Inc. Which leads us to this grim, yet obligatory...

Copyright Notice

The proprietary databases are the intellectual property of Ghostery, Inc. and are protected by copyright and other applicable laws. All rights to them are expressly reserved by Ghostery, Inc. You may not use these databases or any portion thereof for any purpose that is not expressly granted in writing by Ghostery, Inc. All inquires should be sent to legal@ghostery.com. Ghostery, Inc. retains the sole discretion in determining whether or not to grant permission to use the databases. Unauthorized use of the databases, or any portion of them, will cause irreparable harm to Ghostery, Inc. and may result in legal proceedings against you, seeking monetary damages and an injunction against you, including the payment of legal fees and costs.

Ghostery

About

Ghostery Browser Extension for Firefox, Chrome, Opera and Edge

License:Mozilla Public License 2.0


Languages

Language:JavaScript 81.0%Language:SCSS 18.2%Language:Shell 0.4%Language:HTML 0.4%