Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/coteh/exifremove
:sparkler: Dependency-free Node.js module for removing EXIF metadata from JPEG images
https://github.com/coteh/exifremove
exif exif-metadata nodejs
Last synced: 2 months ago
JSON representation
:sparkler: Dependency-free Node.js module for removing EXIF metadata from JPEG images
- Host: GitHub
- URL: https://github.com/coteh/exifremove
- Owner: Coteh
- License: mit
- Created: 2019-09-18T22:40:54.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2024-01-22T03:13:07.000Z (11 months ago)
- Last Synced: 2024-10-01T19:14:52.856Z (3 months ago)
- Topics: exif, exif-metadata, nodejs
- Language: JavaScript
- Homepage:
- Size: 1.58 MB
- Stars: 5
- Watchers: 3
- Forks: 0
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
# exifremove
[![npm](https://img.shields.io/npm/v/exifremove)](https://www.npmjs.com/package/exifremove)
[![CI](https://github.com/Coteh/exifremove/actions/workflows/run-tests.yml/badge.svg)](https://github.com/Coteh/exifremove/actions/workflows/run-tests.yml)
[![codecov](https://codecov.io/gh/Coteh/exifremove/branch/master/graph/badge.svg)](https://codecov.io/gh/Coteh/exifremove)Dependency-free Node.js module that simply removes all EXIF metadata from a single image or a set of images.
## What can this do?
Given an image like this, which contains EXIF and other APP1 metadata:
![before](screenshots/exif_before.png)
This module will strip out the metadata from the image, with no loss in quality:
![after](screenshots/exif_after.png)
(JFIF resides within the APP0 segment of the image, which is currently out of the scope of this module)
## Installation
```sh
npm install exifremove
```or, if you would like to use the CLI:
```sh
npm install -g exifremove-cli
```## Usage
### Module
Example of module usage:
```js
const fs = require('fs');
const exifremove = require('exifremove');const image1 = fs.readFileSync('image1.jpg');
const image2 = fs.readFileSync('image2.jpg');// Remove just one image's Exif
let image = exifremove.remove(image1);
console.log(image); //// Remove multiple images' Exif
let images = exifremove.removeMultiple([image1, image2]);
console.log(images);
/*
[
,
]
*/
```### CLI
```
exifremove [image0] ... [imageN]Options:
--version Show version number [boolean]
-v, --verbose Print extra messages [count]
--km, --keep-marker Keeps the APP1 marker in the JPEG [boolean]
-h, --help Show help [boolean]
```Check out the [CLI module's Readme](cli/README.md) for more information.