1.0.1 • Published 1 year ago

@ntf/buffer v1.0.1

Weekly downloads
-
License
MIT
Repository
github
Last release
1 year ago

@ntf/buffer

Another buffer library

Why

Because I like reinventing the wheel :)

Installation

Use your favourite package manager, idk

npm install @ntf/buffer
yarn add @ntf/buffer
pnpm install @ntf/buffer

Usage

Importing

This library can be used in CommonJS and ESModule environments

const { ... } = require("@ntf/buffer");
import { ... } from "@ntf/buffer";

The main class is called Buffer (yes, the same as in the NodeJS but they're not the same!). It works the following:

  • reading/writing data will cause the buffer to step to the next data in the buffer (like a stream or better yet: the Java DataInputStream and DataOutputStream Class)
  • you can change the positions with the readOffset/writeOffset attribute
  • you can allocate a zero-filled buffer with the static create method
  • the static methods fromBlob/fromTypedArray/fromResponse converts Blob, Response instances and any kind of Typed Array to a Buffer (this includes the NodeJS Buffer class because it's just a Uint8Array but with shitty read/write functions in my opinion)
import { Buffer } from "@ntf/buffer";

const myVeryCoolBuffer = Buffer.create(100); // creates a zero-filled buffer with the size of 100 bytes
const someRandomAssBuffer = await Buffer.fromBlob(someRandomAssBlob) // this static method and "fromResponse" returns a Promise<Buffer>

I'm on NodeJS and that shitty class replaces the NodeJS Buffer class!!!!11!!1

stop crying you baby, you know you can change the name of the import?

import { Buffer as SomeOtherNameThatIsNotBuffer } from "@ntf/buffer"; // ES Module
const thatShittyBufferThatReplacesTheNodeJsBuffer = require("@ntf/buffer").Buffer; // CommonJS

License stuff that nobody reads

Just like any Open Source Project this has a License, the MIT License