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.
Firefox – Download
Chrome – Download
Opera – Download
Edge – Download
Node.js 18 (or higher) is required to build the extension.
$ (cd .. && npm ci)
# Build all sources
$ npm run build.dev
# Build for production
$ npm run build
# Build and watch for changes
$ npm run build.watch
// In manifest.json set
"debug": true,
# Update Jest snapshot artifacts
$ npm run test.snapshot
# Run unit tests
$ npm run test
# Run linter over the ./app and ./src folders
$ npm run lint
# Lint a specific file
$ npm run lint.raw src/utils/matcher.js
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
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
- Firefox: 68+
- Firefox Android: 68+
- Chrome: 69+
- Opera: 56+
- Edge: 79+
See CONTRIBUTING and CODE OF CONDUCT
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 [email protected]. 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.