Bytebuffer.js
A fast and complete ByteBuffer implementation using either ArrayBuffers in the browser or Buffers under node.js.
Install / Use
/learn @protobufjs/Bytebuffer.jsREADME
A fast and complete ByteBuffer implementation using either ArrayBuffers in the browser or node Buffers under node.js, generated from a single source tree through MetaScript.
Features
- Three API-compatible versions:
- bytebuffer Backing buffer: ArrayBuffer, Accessor: Uint8Array
- bytebuffer-dataview Backing buffer: ArrayBuffer, Accessor: DataView
- bytebuffer-node Backing buffer / Accessor: node Buffer
- 8, 16, 32 and 64 bit (through long.js) signed and unsigned integers
- 32 and 64 bit floats
- Varints as used in protobuf (32 and 64 bit, zig-zag)
- Base64, utf8, binary, hex and debug encodings
- Handy string and debugging utilities
- Big and little endianness
- Relative and absolute zero-copy operations wherever possible
- Transparent resizing when using unknown-length data
- Chaining of all operations that do not return a specific value
- Slicing, appending, prepending, reversing, flip, mark, reset, etc.
Usage
The library is compatible with CommonJS and AMD loaders and is exposed globally as dcodeIO.ByteBuffer if neither is
available.
var ByteBuffer = require("bytebuffer");
var bb = new ByteBuffer()
.writeIString("Hello world!")
.flip();
console.log(bb.readIString()+" from bytebuffer.js");
In the browser, 64 bit integer support is optional and present only if Long.js has been loaded prior to bytebuffer.js.
API
Downloads
Support for IE<10, FF<15, Chrome<9 etc.
- Use bytebuffer-dataview with a polyfill (see)
Contributors
Dretch (IE8 compatibility)
License
License: Apache License, Version 2.0 - Logo derived from W3C HTML5 Logos (CC A 3.0)
Related Skills
node-connect
344.4kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
99.2kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
344.4kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
qqbot-media
344.4kQQBot 富媒体收发能力。使用 <qqmedia> 标签,系统根据文件扩展名自动识别类型(图片/语音/视频/文件)。


