@lpi/text-encoder-lite

A Lite Polyfill for the Encoding Living Standard's API.

Usage no npm install needed!

<script type="module">
  import lpiTextEncoderLite from 'https://cdn.skypack.dev/@lpi/text-encoder-lite';
</script>

README

TextEncoderLite

Extracted from Feross' Buffer as a lightweight Polyfill for TextEncoder.

See also

Install

There are a few ways you can get the text-encoder-lite library.

Node

text-encoder-lite is on npm. Simply run:

npm install text-encoder-lite

Or add it to your package.json dependencies.

You can use it as follows:

var TextDecoder = require('TextDecoderLite').TextDecoderLite;
var TextEncoder = require('TextDecoderLite').TextEncoderLite;

Bower

text-encoder-lite is on bower as well. Install with bower like so:

bower install text-encoder-lite

Or add it to your bower.json dependencies.

HTML Page Usage

  <!-- Required for non-UTF encodings -->
  <script src="bower_components/text-encoder-lite/text-encoder-lite.js"></script>

And in your scripts:

var TextDecoder = window.TextDecoderLite;
var TextEncoder = window.TextEncoderLite;

API Overview

Basic Usage

  var uint8array = new TextEncoderLite('utf-8').encode(string);
  var string = new TextDecoderLite('utf-8').decode(uint8array);

Encodings

Only UTF-8 encoding is supported. See text-encoding for full support, including multi-lingual non-standard encodings that aren't supported by TextEncoder proper.

If it seems beneficial I could bring in support for utf-16be, utf-16le, and x-user-defined.