1.4.1 • Published 4 months ago

ts-buffer-serializer v1.4.1

Weekly downloads
3
License
MIT
Repository
github
Last release
4 months ago

TS Buffer Serializer

Overview

Transform objects into binary representations to reduce the size of packet delivery over the network.

Installing in your project...

npm:

npm install ts-buffer-serializer

yarn:

yarn add ts-buffer-serializer

BinarySerializer example

Contract (class with fields decorators)

class PlayerClass {
    @fields.String() name: string;
    @fields.Byte() level: number;
    @fields.Integer() hp: number;
    @fields.Short() attack: number;
    @fields.Double() decimalValue: number;
    @fields.Float() floatValue: number;
    @fields.ArrayOf(fields.Byte()) byteArray: number[];
}

Serializing

const player = new PlayerClass();
player.name = 'Harry Potter';
player.level = 200;
player.hp = 1000;
player.attack = 543;
player.decimalValue = 12.12;
player.floatValue = 14.140000343322754;
player.byteArray = [60, 50, 30];

const buffer = BinarySerializer.serialize(player); // 000c486172727920506f74746572c8000003e8021f40283d70a3d70a3d41623d7100033c321e

Deserializing

const buffer = Buffer.from('000c486172727920506f74746572c8000003e8021f40283d70a3d70a3d41623d7100033c321e', 'hex');
const player = BinarySerializer.deserialize(PlayerClass, buffer);
1.4.1

4 months ago

1.4.0

4 years ago

1.3.1

4 years ago

1.3.0

4 years ago

1.2.0

4 years ago

1.1.0

4 years ago

1.0.1

5 years ago

1.0.0

5 years ago