This file provides guidance to AI coding agents when working with code in this repository.
uBlacklist is a browser extension that blocks specific sites from appearing in search engine results. It supports Chrome, Firefox, Edge, and Safari, with cloud sync via Google Drive, Dropbox, WebDAV, and browser sync.
# Install dependencies (pnpm >= 10 required)
pnpm install
# Build extension (outputs to dist/<browser>[-debug])
pnpm build [--browser=chrome|firefox|edge|safari] [--debug]
# Run all checks (oxlint and oxfmt)
pnpm check
# Run tests
pnpm test
# Fix linting/formatting issues
pnpm fixAfter editing, run pnpm check to verify (this runs oxlint and oxfmt).
The ruleset and SERPINFO specifications are available as agent skills (ublacklist-ruleset and ublacklist-serpinfo), published in ublacklist/packages.
- Edit
src/_locales/en/messages.json(English is the source of truth; other locales are managed via Crowdin — do not edit them directly). - Run
pnpm generate:message-namesto regenerate message name constants.
uBlacklist is split across multiple repositories; this repository (iorate/ublacklist) contains the extension itself, and the others are listed in the Related repositories section of the README. Changes to a specific subsystem belong in its repository.