https://github.com/pyramation/stream-to-etag
Calculates Etag/S3 MD5 sum given a readable stream. Uses the same algorithm as S3.
https://github.com/pyramation/stream-to-etag
es6 etag javascript node-module npm s3 streams
Last synced: about 1 month ago
JSON representation
Calculates Etag/S3 MD5 sum given a readable stream. Uses the same algorithm as S3.
- Host: GitHub
- URL: https://github.com/pyramation/stream-to-etag
- Owner: pyramation
- License: mit
- Created: 2018-10-14T01:06:12.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2020-10-01T00:24:13.000Z (over 5 years ago)
- Last Synced: 2025-07-06T05:08:33.222Z (11 months ago)
- Topics: es6, etag, javascript, node-module, npm, s3, streams
- Language: JavaScript
- Homepage:
- Size: 6.72 MB
- Stars: 1
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: readme.md
- License: LICENSE
Awesome Lists containing this project
README
# Stream to ETag 
Calculates Etag/S3 MD5 sum given a readable stream. Uses the same algorithm that S3 uses to calculate the `ETag`.
This is especially useful for verifying large files uploaded using multipart S3 API, enabling use of `createReadStream` to keep memory usage low.
## Installation
```sh
npm install stream-to-etag
```
## Usage
```js
const etag = await stream2etag(createReadStream(file));
```
ETags compatible with s3, thanks to the author of [this post](https://stackoverflow.com/questions/12186993/what-is-the-algorithm-to-compute-the-amazon-s3-etag-for-a-file-larger-than-5gb#answer-19896823) for the breakdown of the algorithm.