image-js/iobuffer

Read and write binary data in ArrayBuffers

TypeScript

45

151 commits

updated Aug 14, 2026

See the code

README

Zakodium logo

Maintained by Zakodium

iobuffer

NPM version npm download test coverage license

Read and write binary data in ArrayBuffers.

Installation

npm install iobuffer

API

Complete API documentation

Usage example

const { IOBuffer } = require('iobuffer');

const io = new IOBuffer();
// Pointer offset is 0
io.writeChars('Hello world') // Write 11 chars, pointer offset now 11
  .writeUint32(42) // Write 32-bit int (default is little-endian), pointer offset now 15
  .setBigEndian() // Switch to big-endian mode
  .writeUint32(24) // Write another 32-bit int, but big-endian, pointer offset now 19
  .mark() // Bookmark current pointer offset (19)
  .skip(2) // Pointer offset now 21
  .writeBoolean(true) // Write 0xff, pointer offset now 22
  .reset() // Go to bookmarked pointer offset, pointer offset now 19
  .setLittleEndian() // Go back to little endian mode
  .writeUint16(18) // Write 16-bit unsigned integer in the previously skipped 2 bytes, pointer offset now 21
  .rewind() // Pointer offset back to 0
  .toArray(); // Get a Uint8Array over the written part [0-21] of the internal ArrayBuffer

License

MIT

image-js/iobuffer

Read and write binary data in ArrayBuffers

TypeScript

45

151 commits

updated Aug 14, 2026

See the code

README

Zakodium logo

Maintained by Zakodium

iobuffer

NPM version npm download test coverage license

Read and write binary data in ArrayBuffers.

Installation

npm install iobuffer

API

Complete API documentation

Usage example

const { IOBuffer } = require('iobuffer');

const io = new IOBuffer();
// Pointer offset is 0
io.writeChars('Hello world') // Write 11 chars, pointer offset now 11
  .writeUint32(42) // Write 32-bit int (default is little-endian), pointer offset now 15
  .setBigEndian() // Switch to big-endian mode
  .writeUint32(24) // Write another 32-bit int, but big-endian, pointer offset now 19
  .mark() // Bookmark current pointer offset (19)
  .skip(2) // Pointer offset now 21
  .writeBoolean(true) // Write 0xff, pointer offset now 22
  .reset() // Go to bookmarked pointer offset, pointer offset now 19
  .setLittleEndian() // Go back to little endian mode
  .writeUint16(18) // Write 16-bit unsigned integer in the previously skipped 2 bytes, pointer offset now 21
  .rewind() // Pointer offset back to 0
  .toArray(); // Get a Uint8Array over the written part [0-21] of the internal ArrayBuffer

License

MIT

Project health

Overall

3.4/10

Maintained

0/10

Code review

3/10
OpenSSF Scorecard

Latest release

6.0.1 · Aug 13, 2025

Releases this year

0

Significant stargazers

Mohsen Azimi

571 followers · starred Feb 2021