Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/image-js/iobuffer
Read and write binary data in ArrayBuffers
https://github.com/image-js/iobuffer
hacktoberfest
Last synced: about 2 months ago
JSON representation
Read and write binary data in ArrayBuffers
- Host: GitHub
- URL: https://github.com/image-js/iobuffer
- Owner: image-js
- License: mit
- Created: 2015-09-23T20:06:58.000Z (almost 9 years ago)
- Default Branch: main
- Last Pushed: 2023-05-10T16:18:32.000Z (over 1 year ago)
- Last Synced: 2024-07-19T03:23:02.170Z (2 months ago)
- Topics: hacktoberfest
- Language: TypeScript
- Homepage: http://image-js.github.io/iobuffer/
- Size: 1.65 MB
- Stars: 43
- Watchers: 5
- Forks: 6
- Open Issues: 7
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# iobuffer
Read and write binary data in ArrayBuffers.
Maintained by Zakodium
[![NPM version][npm-image]][npm-url]
[![build status][ci-image]][ci-url]
[![Test coverage][codecov-image]][codecov-url]
[![npm download][download-image]][download-url]## Installation
```console
npm i iobuffer
```## API
Complete [API documentation](http://image-js.github.io/iobuffer/)
## Usage example
```js
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](./LICENSE)
[npm-image]: https://img.shields.io/npm/v/iobuffer.svg
[npm-url]: https://www.npmjs.com/package/iobuffer
[ci-image]: https://github.com/image-js/iobuffer/workflows/Node.js%20CI/badge.svg?branch=main
[ci-url]: https://github.com/image-js/iobuffer/actions?query=workflow%3A%22Node.js+CI%22
[codecov-image]: https://img.shields.io/codecov/c/github/image-js/iobuffer.svg
[codecov-url]: https://codecov.io/gh/image-js/iobuffer
[download-image]: https://img.shields.io/npm/dm/iobuffer.svg
[download-url]: https://www.npmjs.com/package/iobuffer