uBlacklist
Blocks specific sites from appearing in Google search results
Chrome Web Store / Firefox Add-ons / App Store (for macOS and iOS, thanks to Group-Leafy)
Description
This extension prevents the sites you specify from appearing in Google search results.
You can add rules on search result pages, or on sites to be blocked by clicking the toolbar icon. Rules can be specified either by match patterns (e.g. *://*.example.com/*
) or by regular expressions (e.g. /example\.(net|org)/
).
You can synchronize rulesets across devices via cloud storage. At the moment, Google Drive and Dropbox are supported.
You can also subscribe to public rulesets. Some subscriptions are listed on the website: https://iorate.github.io/ublacklist/subscriptions
Supported search engines
This extension is available in the below search engines.
Web | Images | Videos | News | |
---|---|---|---|---|
Bing | ||||
Brave | ||||
DuckDuckGo | ||||
Ecosia | ||||
Qwant | *1 | |||
SearX *2 | ||||
Startpage | ||||
Yahoo! JAPAN | ||||
Yandex |
*1 Only if "Always play videos on Qwant.com" is turned off
*2 Only certain public instances are supported
For subscription providers
To publish a ruleset as a subscription, place a ruleset file encoded in UTF-8 on a suitable HTTP(S) server, and publish the URL. Here is an example hosted on GitHub:
https://raw.githubusercontent.com/iorate/ublacklist-example-subscription/master/uBlacklist.txt
In uBlacklist >=6.6.0 for Chrome, subscription links are available. To add a subscription with name
and url
, the following URL can be used as a shortcut to the options page:
https://iorate.github.io/ublacklist/subscribe?name={urlEncode(name)}&url={urlEncode(url)}
For the above example:
https://iorate.github.io/ublacklist/subscribe?name=Example&url=https%3A%2F%2Fraw.githubusercontent.com%2Fiorate%2Fublacklist-example-subscription%2Fmaster%2FuBlacklist.txt
For developers
Build
To build this extension, Node.js>=16 and Yarn are required.
git clone https://github.com/iorate/ublacklist.git
cd ublacklist
yarn
# yarn build <browser:=chrome-mv3> <mode:=development>
yarn build firefox production
Before opening a pull request, you should make sure that yarn lint
, yarn test
, and yarn build-all
pass.
yarn lint
# Some lint errors can be fixed automatically
# yarn fix
yarn test
yarn build-all
NOTE: The API keys and secrets for the sync feature are not included in this repository. To develop the sync feature, set your own API keys and secrets in the .env
file.
DROPBOX_API_KEY=...
DROPBOX_API_SECRET=...
GOOGLE_DRIVE_API_KEY=...
GOOGLE_DRIVE_API_SECRET=...
Locale
To add a locale,
- Determine an ISO language code such as
en
referring to kLanguageInfoTable. - Copy
src/locales/en.json.ts
tosrc/locales/${languageCode}.json.ts
and translate entries. - Open
src/scripts/dayjs-locales.ts
and import the dayjs locale. - To localize description and screenshots on web stores, create
web-store-assets/${languageCode}/
and add files.- Screenshot localization is available only on Chrome Web Store.
- Screenshots should be 1280x800.
Author
License
uBlacklist is licensed under MIT License.