You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+29-18Lines changed: 29 additions & 18 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,18 +1,18 @@
1
1
# url-sanitize
2
2
3
-
> Remove tracking parameters and unwrap tracking redirects from URLs with ClearURLs-compatible rules.
3
+
> Remove tracking parameters and unwrap tracking redirects from URLs with ClearURLs, AdGuard, Brave, and Firefox rules.
4
4
5
-
**Looking for CleanURLs / ClearURLs behavior as a library or CLI?** You're in the right place. `url-sanitize` removes tracking junk like `utm_*`, `fbclid`, and redirector wrappers while telling you exactly which rule changed the URL.
5
+
**Looking for CleanURLs / ClearURLs behavior as a library or CLI?** You're in the right place. `url-sanitize` removes tracking junk like `utm_*`, `fbclid`, and redirector wrappers, now using a merged ClearURLs / AdGuard / Brave / Firefox catalog by default.
6
6
7
7
Use it from npm, crates.io, native release binaries, Python, CI, workers, browsers, edge runtimes, Node.js, Bun, and Deno.
8
8
9
9
## Why this exists
10
10
11
11
-**One behavior contract across languages.** TypeScript and Rust implementations are checked against the same JSONL conformance corpus.
12
12
-**Explainable privacy cleanup.** Results include the stripped params, redirect provider, or block rule instead of returning an opaque string.
13
-
-**ClearURLs-compatible without AGPL lock-in.** Code, CLIs, and tooling are MIT; ClearURLs-derived rule data remains LGPL-3.0-only.
13
+
-**Multi-source without AGPL lock-in.** Code, CLIs, and tooling are MIT; upstream rule data keeps its source license.
14
14
-**Automation-friendly.** The Rust CLI is deterministic, prompt-free, supports `--json`, and embeds a pinned catalog.
15
-
-**Fresh rules.** GitHub Actions syncs the upstream ClearURLs catalog daily and release workflows publish npm packages, crates, Python wheels, and native binaries.
-`sync-clearurls.yml` checks upstream ClearURLs daily and opens a version-bump PR when rules change.
248
+
-`sync-sources` checks upstream rule sources daily and opens a version-bump PR when rules change.
238
249
-`release-dry-run.yml` builds the release matrix on PRs, assembles archives, renders Homebrew/Scoop metadata, and validates installer/package-manager syntax before merge.
239
250
-`auto-tag.yml` verifies release metadata, creates annotated release tags after package version bumps land on `main`, and explicitly dispatches `release.yml`.
240
251
-`release.yml` publishes npm packages, Rust crates, PyPI package, native GitHub Release assets, Homebrew/Scoop metadata, installer smoke tests, package-manager install smoke, and public endpoint smoke from `v*` tags.
-**v2.0** — multi-source packages for AdGuard URL Tracking, Brave Debouncer, Firefox query-strip, and a merged catalog
288
+
-**Deferred** — GitHub Action, MCP, extra package managers, native npm packages, WASM, and in-process Python bindings
278
289
279
290
## Contributing
280
291
281
292
PRs welcome. See [CONTRIBUTING.md](CONTRIBUTING.md).
282
293
283
294
## License
284
295
285
-
MIT for engine + CLI + tooling. LGPL-3.0-only for ClearURLs-derived data in `@url-sanitize/clearurls`. See [LICENSE](LICENSE) and [docs/license-model.md](docs/license-model.md).
296
+
MIT for engine + CLI + tooling. Bundled upstream rule data keeps its source license: ClearURLs and AdGuard are LGPL-3.0-only; Brave and Firefox data are MPL-2.0. See [LICENSE](LICENSE) and [docs/license-model.md](docs/license-model.md).
0 commit comments