Convert Figma logo to code with AI

ghostery logoghostery-extension

Ghostery Browser Extension for Firefox, Chrome, Opera, Edge and Safari

1,378
139
1,378
43

Top Related Projects

Firefox Multi-Account Containers lets you keep parts of your online life separated into color-coded tabs that preserve your privacy. Cookies are separated by container, allowing you to use the web with multiple identities or accounts simultaneously.

46,727

uBlock Origin - An efficient blocker for Chromium and Firefox. Fast and lean.

Privacy Badger is a browser extension that automatically learns to block invisible trackers.

AdGuard browser extension

Brave browser for Android, iOS, Linux, macOS, Windows.

DuckDuckGo Privacy Essentials browser extension for Firefox, Chrome.

Quick Overview

The Ghostery Extension is an open-source browser extension designed to enhance user privacy and improve browsing speed. It blocks trackers, ads, and other potentially harmful scripts on websites, giving users more control over their online experience and protecting their personal data.

Pros

  • Improves online privacy by blocking trackers and scripts
  • Enhances browsing speed by reducing the number of elements loaded on web pages
  • Customizable blocking options allow users to tailor their experience
  • Open-source nature allows for community contributions and transparency

Cons

  • May break functionality on some websites that rely heavily on trackers or scripts
  • Requires regular updates to keep up with new tracking technologies
  • Some users may find the interface and settings overwhelming
  • Can potentially impact website revenue by blocking ads

Getting Started

To get started with the Ghostery Extension:

  1. Visit the official Ghostery website or your browser's extension store.
  2. Click on "Add to [Your Browser]" to install the extension.
  3. Follow the on-screen instructions to set up your preferences.
  4. Click on the Ghostery icon in your browser toolbar to access settings and view blocked trackers on each website you visit.

For developers interested in contributing to the project:

  1. Fork the repository on GitHub.
  2. Clone your fork: git clone https://github.com/[YourUsername]/ghostery-extension.git
  3. Install dependencies: npm install
  4. Make your changes and submit a pull request for review.

Competitor Comparisons

Firefox Multi-Account Containers lets you keep parts of your online life separated into color-coded tabs that preserve your privacy. Cookies are separated by container, allowing you to use the web with multiple identities or accounts simultaneously.

Pros of Multi-Account Containers

  • Focuses on isolating browsing contexts, allowing users to maintain separate identities online
  • Integrates seamlessly with Firefox, providing a native experience
  • Offers fine-grained control over container management and assignment

Cons of Multi-Account Containers

  • Limited to Firefox browser, not available for other platforms
  • Does not provide comprehensive tracking protection or ad-blocking features
  • Requires manual setup and management of containers for optimal use

Code Comparison

Multi-Account Containers:

async function createContainer(name, color, icon) {
  return browser.contextualIdentities.create({
    name: name,
    color: color,
    icon: icon
  });
}

Ghostery Extension:

Ghostery.blockTracker = function(tracker) {
  if (!this.db.trackers[tracker]) return;
  this.db.trackers[tracker].blocked = true;
  this.saveDatabase();
};

The code snippets highlight the different focus areas of each project. Multi-Account Containers deals with creating isolated browsing contexts, while Ghostery Extension focuses on blocking trackers and managing a tracker database.

Multi-Account Containers provides a powerful tool for privacy-conscious users who want to separate their online identities, but it lacks the comprehensive tracking protection offered by Ghostery Extension. Ghostery, on the other hand, offers broader browser compatibility and automated protection against trackers and ads, but doesn't provide the same level of identity isolation as Multi-Account Containers.

46,727

uBlock Origin - An efficient blocker for Chromium and Firefox. Fast and lean.

Pros of uBlock

  • Open-source with a more transparent development process
  • Lighter on system resources, potentially offering better performance
  • More customizable with advanced features for power users

Cons of uBlock

  • Steeper learning curve for non-technical users
  • Less user-friendly interface compared to Ghostery's polished design
  • Lacks some of Ghostery's privacy-focused features like tracker analytics

Code Comparison

uBlock (manifest.json):

{
  "name": "uBlock Origin",
  "version": "1.44.4",
  "manifest_version": 2,
  "default_locale": "en",
  "description": "__MSG_extShortDesc__",
  "icons": {
    "16": "img/icon_16.png",
    "32": "img/icon_32.png",
    "64": "img/icon_64.png",
    "128": "img/icon_128.png"
  }
}

Ghostery (manifest.json):

{
  "name": "__MSG_name__",
  "version": "8.5.6",
  "manifest_version": 2,
  "default_locale": "en",
  "description": "__MSG_short_description__",
  "icons": {
    "16": "app/images/icon16.png",
    "48": "app/images/icon48.png",
    "128": "app/images/icon128.png"
  }
}

Both extensions use similar manifest structures, but uBlock offers more icon sizes and a different naming convention for localization.

Privacy Badger is a browser extension that automatically learns to block invisible trackers.

Pros of Privacy Badger

  • Fully open-source and maintained by a non-profit organization (EFF)
  • Uses machine learning to automatically detect and block trackers
  • Does not rely on predefined blocklists, potentially catching new trackers faster

Cons of Privacy Badger

  • May require more user intervention to fine-tune blocking
  • Less comprehensive out-of-the-box blocking compared to Ghostery's extensive database
  • Potentially higher resource usage due to its learning algorithm

Code Comparison

Privacy Badger (JavaScript):

function updateOrigin(tabId, frameId, origin, action) {
  if (!origin) {
    return;
  }
  if (!(origin in tabData[tabId])) {
    tabData[tabId][origin] = {};
  }
  tabData[tabId][origin][frameId] = action;
}

Ghostery (JavaScript):

_getCommonData(tab) {
  const { url, host } = tab;
  return {
    tab_id: tab.id,
    tab_url: url,
    tab_host: host,
  };
}

Both extensions use JavaScript for their core functionality. Privacy Badger's code snippet shows a function for updating origin data, while Ghostery's snippet demonstrates a method for retrieving common tab data. The code structures reflect their different approaches to tracking protection.

AdGuard browser extension

Pros of AdguardBrowserExtension

  • More comprehensive ad-blocking and privacy protection features
  • Regular updates and active development
  • Supports a wider range of browsers and platforms

Cons of AdguardBrowserExtension

  • Larger codebase, potentially more resource-intensive
  • More complex configuration options may be overwhelming for some users
  • Some advanced features require a paid subscription

Code Comparison

AdguardBrowserExtension:

export const isHttpRequest = function (url) {
    return url && url.indexOf('http') === 0;
};

Ghostery-extension:

export const isValidUrl = (url) => {
  try {
    return Boolean(new URL(url));
  } catch (e) {
    return false;
  }
};

AdguardBrowserExtension uses a simple string check for HTTP protocols, while Ghostery-extension employs a more robust URL validation method. This difference reflects the broader approach of AdguardBrowserExtension compared to Ghostery's more focused implementation.

Both extensions aim to enhance user privacy and block unwanted content, but AdguardBrowserExtension offers a more comprehensive suite of features at the cost of increased complexity. Ghostery-extension, on the other hand, provides a more streamlined experience focused primarily on tracker blocking and privacy protection.

Brave browser for Android, iOS, Linux, macOS, Windows.

Pros of Brave Browser

  • Full-featured web browser with built-in privacy and ad-blocking features
  • Includes cryptocurrency wallet and rewards system
  • Larger development team and more frequent updates

Cons of Brave Browser

  • Larger codebase, potentially more complex for contributors
  • Some controversy around its cryptocurrency and advertising model
  • May have a steeper learning curve for new developers

Code Comparison

Ghostery Extension (JavaScript):

function blockTracker(tracker) {
  if (tracker.shouldBlock) {
    tracker.block();
    updateBlockCount();
  }
}

Brave Browser (C++):

void AdBlockService::OnURLChanged(content::WebContents* contents,
                                  const GURL& url,
                                  bool is_main_frame) {
  if (!url.is_valid() || !is_main_frame)
    return;
  FilterLists();
}

Key Differences

  • Ghostery is a browser extension focused on tracker blocking and privacy
  • Brave is a complete browser with integrated privacy features
  • Ghostery uses primarily JavaScript, while Brave uses C++ for core functionality
  • Brave has a larger scope, including features beyond privacy and ad-blocking

Development Activity

  • Brave has more frequent commits and a larger contributor base
  • Ghostery has a more focused development scope
  • Both projects are actively maintained, but Brave shows higher overall activity

Community and Support

  • Brave has a larger user base and more extensive documentation
  • Ghostery benefits from a dedicated privacy-focused community
  • Both projects offer user support, but Brave has more resources available

DuckDuckGo Privacy Essentials browser extension for Firefox, Chrome.

Pros of DuckDuckGo Privacy Extension

  • More comprehensive privacy protection, including search anonymization and HTTPS upgrading
  • Integrated with DuckDuckGo search engine for enhanced privacy features
  • Regular updates and active development from a well-known privacy-focused company

Cons of DuckDuckGo Privacy Extension

  • Less granular control over tracker blocking compared to Ghostery
  • May not offer as detailed insights into blocked trackers and their categories
  • Potentially higher resource usage due to broader feature set

Code Comparison

DuckDuckGo Privacy Extension:

const trackerBlockingEnabled = settings.getSetting('trackerBlockingEnabled')
const httpsEverywhereEnabled = settings.getSetting('httpsEverywhereEnabled')
const embeddedTweetsEnabled = settings.getSetting('embeddedTweetsEnabled')

Ghostery:

const ghosteryFeatures = {
  antiTracking: prefs.get('antiTracking'),
  adBlocking: prefs.get('adBlocking'),
  smartBlocking: prefs.get('smartBlocking')
}

Both extensions use similar approaches to manage user settings, but DuckDuckGo's code suggests a broader range of privacy features, while Ghostery's code indicates more focused tracker and ad blocking capabilities.

Convert Figma logo designs to code with AI

Visual Copilot

Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.

Try Visual Copilot

README

Ghostery Browser Extension

Ghostery is a powerful Tracker & Adblocker browser extension with over 100 million downloads. Block ads, stop trackers, and speed up websites. Privacy at its best.

  • Block all ads on websites, including YouTube and Facebook, to focus on the information that matters.
  • Stop trackers from collecting your personal data.
  • Automatically remove intrusive cookie pop-ups and express dissent to online tracking.
  • Get detailed tracker information on any website you visit, including the number of trackers, their type, and the company operating them.
  • Preview tracker information on search engine result pages to make informed choices.
  • Inspect the largest database of trackers, updated fast and reliably for all users.

Links

Additional Open Source Ghostery Projects

Development

First, install dependencies and download additional resources (e.g. block lists):

npm ci

Then, start the local version of the extension in Chrome:

npm start

You can add the target after the start command to run the extension in a different browser:

  • Firefox - npm start firefox
  • Opera - npm start -- --browser=opera
  • Edge - npm start -- --browser=edge
  • Safari (MacOS) - npm start safari-macos
  • Safari (iOS) - npm start safari-ios

The build script assumes that you are using macOS, and browsers are installed in the default locations

To run local version in Safari, you have to use Xcode as well. The project files are available in the xcode folder, but Apple's ecosystem is more complex. Fortunately, most changes can be tested reliably in Chrome.

Ghostery Team

Ghostery relies on contributions from lots of talented people.

License

MPL-2.0 Copyright 2017-present Ghostery GmbH. All rights reserved.

See LICENSE