Skip to content
This repository was archived by the owner on Jun 20, 2023. It is now read-only.
/ adblock Public archive

πŸ›‘οΈ Dot Shield, a powerful adblocker that stays out of your way.

License

Notifications You must be signed in to change notification settings

dothq/adblock

Folders and files

NameName
Last commit message
Last commit date

Latest commit

34f0cad Β· Jun 20, 2023
May 17, 2021
Feb 22, 2021
Jul 5, 2021
Jul 5, 2021
Mar 30, 2021
Mar 12, 2021
Feb 21, 2021
Apr 24, 2021
Apr 24, 2021
Mar 16, 2021
Mar 16, 2021
Feb 13, 2021
Feb 13, 2021
Jun 20, 2023
Jul 5, 2021
Feb 21, 2021
Apr 15, 2021
Jul 5, 2021
Apr 15, 2021
Apr 10, 2021
Jul 5, 2021

Repository files navigation

Dot Shield

This project has been archived as we are in the process of moving adblock logic in-tree, eventually this repository will be unarchived to store our block lists.

Abnormal system requirements

  • cargo install cargo-web

Development

Please make sure that you have the following installed on your system:

  • node
  • yarn
  • The rust development tools
  • wasm-pack

Then install all of the dependencies:

yarn

When developing run:

yarn dev

This will compile the addon into the dist folder. If you make a change to the code, it will recompile.

File structure

All of the source code is contained in the src directory.

frontend contains all of the code for the UIs. Inside of front end there is constants containing all of the constants, html containing the html files for each ui (and a pages.js used by webpack), icons containing all of the icons and ui. ui contains the TS and CSS code for each UI. Inside the ui folder assets only contains fonts, common contains shared UI components and css files, popup contains the react and css code for the browser action, settings contains the react and css code for /settings.html, and stats contains the TS code for /stats.html.

constants contains the manifest file and some constants that need to be shared between the background threads and UI threads.

backend contains the code for the background script for blocking ads. The constants folder contains the links to our ad and tracker lists. rust contains rust code that will, in the future be used for performance critical functions. background is the main background script, blacklist is the manager for the blacklists, permStore is a wrapper around extension storage, settings is a file for storing settings, tempPort is for communication between uis and the backend and types is for some typescript types.