Skip to content

kchapelier/BNDL

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

BNDL

BNDL is an experimental file format for bundling arbitrary files (images, 3D models, ...) as binary bundle for consumption in JavaScript applications.

Notes

BNDL is largely a byproduct of the development of PRWM. Support for multiple models in a single file was deliberately not implemented in PRWM as my understanding was that with HTTP/2 it would not matter as requesting multiple files would not incur any additional load time. It was later pointed out to me by Alexey Shildyakov that HTTP/2 could still benefit from bundling when dealing with a large number of files. See the relevant article for more information.

The BNDL format does not apply any compression on the original file content, so the size of the bundle will usually be about the same as the original files size. It is instead recommended to rely standard HTTP compression (gzip, brotli, ...) when serving BNDL bundles to achieve the best performance.

Specifications

Implementations

bndl

github / npm / online example 1 / online example 2

The reference encoder/decoder for the file format with a CLI tool to generate bundles and an example web loader implementation to consume them in a browser.

Online tools

BNDL Inspector

http://www.kchapelier.com/bndl/examples/bndl-inspector.html

Drag and drop a BNDL file to analyze its content.

BNDL Generator

http://www.kchapelier.com/bndl/examples/bndl-generation.html

Drag and drop files to create a BNDL bundle.

It is recommended to use the CLI tool included in the bndl npm package instead.

About

BNDL (binary bundle for arbitrary files) specifications and implementations.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published