# compact-encoding-net

> Compact codecs for net types

Latest version **1.3.0** (published 2026-05-05) · Apache-2.0 license · 0 weekly downloads

## Install

```sh
npm install compact-encoding-net
pnpm add compact-encoding-net
yarn add compact-encoding-net
bun add compact-encoding-net
```

## Health

**Score 45/100 (D)** — status: active.

Positive: no vulnerabilities.

Warnings: low downloads; no types; no esm support.

## Facts

| | |
|---|---|
| Version | 1.3.0 |
| Published | 2026-05-05 |
| First published | 2021-10-25 |
| Weekly downloads | 0 |
| License | Apache-2.0 |
| TypeScript types | none |
| Module format | CommonJS |
| Dependencies | 1 |
| Unpacked size | 24.5 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| GitHub stars | 1 |
| Author | Kasper Isager Dalsgarð |
| Maintainers | mafintosh |

## Links

- npm: https://www.npmjs.com/package/compact-encoding-net
- Repository: https://github.com/compact-encoding/compact-encoding-net
- Homepage: https://github.com/compact-encoding/compact-encoding-net#readme
- Issues: https://github.com/compact-encoding/compact-encoding-net/issues
- npm.io page: https://npm.io/package/compact-encoding-net

## Dependencies (1)

- [compact-encoding](https://npm.io/package/compact-encoding.md) ^3.0.0

## Recent versions

- 1.3.0 (latest) — 2026-05-05
- 1.2.0 — 2022-07-27
- 1.1.0 — 2022-07-25
- 1.0.1 — 2021-10-26
- 1.0.0 — 2021-10-25

## README

# compact-encoding-net

[compact-encoding](https://github.com/compact-encoding/compact-encoding) codecs for net types.

## Installation

```sh
npm install compact-encoding-net
```

## Codecs

### `port`

Codec for 16 bit port numbers.

```js
const { port } = require('compact-encoding-net')
```

#### Encoding

```js
const buffer = cenc.encode(port, 8080)
```

#### Decoding

```js
cenc.decode(port, buffer)
// 8080
```

### `ipv4`

Codec for IPv4 addresses.

> :warning: The codec is only defined for valid IPv4 addresses.

```js
const { ipv4 } = require('compact-encoding-net')
```

#### Encoding

```js
const buffer = cenc.encode(ipv4, '127.0.0.1')
```

#### Decoding

```js
cenc.decode(ipv4, buffer)
// '127.0.0.1'
```

### `ipv4Address`

Codec for IPv4 addresses plus a port.

```js
const { ipv4Address } = require('compact-encoding-net')
```

#### Encoding

```js
const buffer = cenc.encode(ipv4, { host: '127.0.0.1', port: 8080 })
```

#### Decoding

```js
cenc.decode(ipv4Address, buffer)
// { host: '127.0.0.1', port: 8080 }
```

### `ipv6`

Codec for IPv6 addresses.

> :warning: The codec is only defined for valid IPv6 addresses.

```js
const { ipv6 } = require('compact-encoding-net')
```

#### Encoding

```js
const buffer = cenc.encode(ipv6, '::1')
```

#### Decoding

```js
cenc.decode(ipv6, buffer)
// '0:0:0:0:0:0:0:1'
```

### `ipv6Address`

Codec for IPv6 addresses plus a port.

```js
const { ipv6Address } = require('compact-encoding-net')
```

#### Encoding

```js
const buffer = cenc.encode(ipv6Address, { host: '::1', port: 8080 })
```

#### Decoding

```js
cenc.decode(ipv6Address, buffer)
// { host: '0:0:0:0:0:0:0:1', port: 8080 }
```

### `ip`

Codec for dual IPv4/6 addresses.

> :warning: The codec is only defined for valid IPv4 and IPv6 addresses.

```js
const { ip } = require('compact-encoding-net')
```

#### Encoding

```js
const buffer = cenc.encode(ip, '::1')
```

#### Decoding

```js
cenc.decode(ip, buffer)
// '0:0:0:0:0:0:0:1'
```

### `ipAddress`

Codec for dual IPv4/6 addresses plus a port.

```js
const { ipAddress } = require('compact-encoding-net')
```

#### Encoding

```js
const buffer = cenc.encode(ipAddress, { host: '::1', port: 8080 })
```

#### Decoding

```js
cenc.decode(ipv6Address, buffer)
// { host: '0:0:0:0:0:0:0:1', family: 6, port: 8080 }
```

## License

Apache 2.0

---
_Source: https://npm.io/package/compact-encoding-net · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
