https://github.com/martabal/ff-diff
ff-diff is a simple script to compare changes in user.js preference files between two versions of Firefox.
https://github.com/martabal/ff-diff
Last synced: 24 days ago
JSON representation
ff-diff is a simple script to compare changes in user.js preference files between two versions of Firefox.
- Host: GitHub
- URL: https://github.com/martabal/ff-diff
- Owner: martabal
- License: mit
- Created: 2025-05-03T10:17:31.000Z (about 1 month ago)
- Default Branch: main
- Last Pushed: 2025-05-08T15:06:58.000Z (28 days ago)
- Last Synced: 2025-05-13T00:57:39.382Z (24 days ago)
- Language: TypeScript
- Size: 1.47 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# ff-diff
`ff-diff` is a simple node script to compare changes in user.js preference files between two versions of Firefox. You don't need to mess with your firefox instance.
Features:
- Compares user.js files from two specified Firefox versions
- Automatically downloads official Firefox binaries
- Highlights differences without requiring a local Firefox installationRequirements:
- Internet connection (for downloading Firefox binaries)
- node >= 22 and npm
- tar## Installation (NPM)
```bash
npm i -g ff-diff
```## Usage
```bash
$ ff-diff
Usage:
ff-diff clean [--keep ,] [--keep-archives] [--keep-sources]
ff-diff [--clean-archives] [--clean-sources] [--do-not-print-diffs-in-console] [--save-diffs-in-file] [--compare-userjs ]
```Example:
```bash
ff-diff 137.0 138.0
```## Develop
Clone this repository:
```bash
git clone https://github.com/martabal/ff-diff.git
cd ff-diff
npm ci
```Run the comparison script:
```bash
npm run ff-diff
```for example:
```bash
npm run ff-diff 137.0 138.0
```If you use a custom `user.js`. You can check if some of the keys are removed/changed with the argument `--compare-userjs `.
## Clean
The Firefox sources will be downloaded into the `dist/` directory. By default, the script keeps the archives and the sources extracted from the archives. If you want to remove them, you can execute the script with the `--remove-archives` `--remove-sources` arguments. But you can also use the script `npm run clean` to delete all archives and sources in `dist/`. If you want to use specific version you can use:
```bash
npm run ff-diff clean -- --keep ,
```If you want to only keep archives you can use `npm run clean -- --keep , --keep-archives` or `npm run clean -- --keep , --keep-sources` if you want to keep the sources
> [!NOTE]
> The script may take some time to run depending on your connection speed.Example of a generated diffs:
