Skip to content

A Javascript automation tool to convert data (file, image etc.) to blob object and vice-versa.

License

Notifications You must be signed in to change notification settings

atayahmet/blobify

Repository files navigation

Blobify

A Javascript automation tool to convert from html file object to blob object and more capabilities with creating custom helper function.

npm version Build Status Dependency Status Known Vulnerabilities GitHub license GitHub issues

Getting Started

import { chunk } from '@atayahmet/blobify';

chunk({ chars: stream, slice: 128, type: 'image/jpg' })

Installing

npm i @atayahmet/blobify --save

or

yarn add @atayahmet/blobify

Running the tests

npm test

Built-in Helpers

Name Parameter Type Return Description
pipe Function Blobify class instance Pipe itarator.
createBlob string[] Blob Create blob object from chunks.
chunk IChunkOptions Uint8Array[] Chunk generator.
base64Encode File Promise<string> HTML5 File object.
base64Decode string any Base64 encoded data.
toStream Blob Promise<string> Convert blob object to readable content.

IChunkOptions

Name Type Description
chunks string or Uint8Array Data format.
slice number (optional) Per chunk size. (Default 512)
type string File content type.

Quick Example

Convert the file to uploadable form.

import { pipe, chunk, createBlob, base64Encode } from '@atayahmet/blobify';

const file = document.getElementById('image');

pipe(() => base64Encode(file))
  .pipe(stream => chunk({ chars: stream, slice: 128 }))
  .pipe(chunks => createBlob(chunks, "image/jpeg"))
  .catch(console.error)
  .run()
  .then(resul => {
    console.log(result);
  });

Vice versa:

pipe(() => toStream(blob))
  .pipe(stream => base64Decode(stream))
  .pipe(data => {
      // do some maniplation...
      return data;
  })
  .run()
  .then(result => {
    // ...
  });

Built With

Versioning

We use SemVer for versioning. For the versions available, see the tags on this repository.

Authors

See also the list of contributors who participated in this project.

License

This project is licensed under the MIT License - see the LICENSE.md file for details

About

A Javascript automation tool to convert data (file, image etc.) to blob object and vice-versa.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published