input === output


lossless.dev

01 / definition

Lossless, by definition.

A lossless transformation preserves every bit of input. Decode the output and you recover the original — exactly. No approximation, no rounding, no perceptual tricks. f-1(f(x)) = x, for every x.

guarantee · bit-for-bit identity

02 / tools

Compression, encoding, conversion.

A small set of correct primitives. Each tool reads one format and writes another, then proves the round-trip. Nothing more is offered. Nothing less is needed.

  • zstd stream compression
  • flac audio, lossless
  • png raster, lossless
  • brotli web payloads
  • cbor structured data

03 / size

Smaller. Identical.

A representative sample, compressed with default settings. The bar shrinks; the content does not.

text / utf-8 128 kB 38 kB 29%

= lossless

audio / wav → flac 42.0 MB 23.1 MB 55%

= lossless

json / cbor 8.4 kB 3.3 kB 39%

= lossless

04 / proof

Diff: original / compressed

Two columns. After decode, byte-by-byte equality. We show the same payload twice, because that is the entire claim.

original

{
  "domain": "lossless.dev",
  "ok":     true,
  "bytes":  131072,
  "sha256": "9f86d0…0c3e7"
}

size 131072 B

compressed → decoded

{
  "domain": "lossless.dev",
  "ok":     true,
  "bytes":  131072,
  "sha256": "9f86d0…0c3e7"
}

size 131072 B

verifying