Skip to content
Projects

bhouston/hdrify has 43 GitHub stars and 3 forks. GitHot measured 0 stars in 24 hours. Last checked 2026-11-15 02:51 UTC. Last push 2026-11-10.

How these counts are measured

Measured star growth

in 24h
0
in 7 days
Collecting history
in 15 days
Collecting history
in 1 month
Collecting history

Net star changes over overlapping periods, not daily totals. Missing measurements are left blank. Stars measure attention, not software quality.

About

Read/write HDR, EXR and UltraHDR JPGs (Gain maps), includes tone mapping and color space support.

Developer Tools

README.md

Original

HDRify logo


npm package npm downloads coverage discord chat documentation


HDRify

Read and write EXR, HDR, and Ultra HDR images in pure JavaScript.

  • 📦 Pure JavaScript, No Native Bindings
  • 🌐 Node.js, Browsers, and Web Workers
  • 🗜️ All Major EXR Compressions
  • 📸 Adobe and Ultra HDR Gain Maps
  • 🎨 Four Built-in Tone Mappers
  • 🔷 Full TypeScript Support

HDRify reads and writes HDR (Radiance RGBE), EXR (OpenEXR), and JPEG with gain maps (JPEG-R / Ultra HDR) in pure JavaScript. It has no native bindings and works in Node.js and browsers.

Every reader returns a shared HdrifyImage (float RGBA pixels) and every writer accepts it, so converting between formats is a read followed by a write.

Packages

Package Version (click for changelogs)
hdrify hdrify version
hdrify-cli hdrify-cli version
hdrify-react hdrify-react version
hdrify-vscode-extension hdrify-vscode-extension version

Get started

pnpm add hdrify

Convert an EXR image to Radiance HDR in Node.js:

import { readFileSync, writeFileSync } from 'node:fs';
import { readExr, writeHdr } from 'hdrify';

const image = readExr(readFileSync('input.exr'));
writeFileSync('output.hdr', writeHdr(image));

API reference: readExr · writeHdr · HdrifyImage.

Read and write OpenEXR, Radiance HDR, JPEG XL, and JPEG gain maps with one floating-point RGBA image format. Resize, flip, convert color spaces, or apply ACES, AgX, Khronos Neutral, and Reinhard tone mapping.

Use it where you work

Documentation

Full documentation is available on the HDRify documentation website. See the getting started guide, supported formats, and API reference for more.

Acknowledgements

This project would not have been possible without these projects, which were used as references:

  • Three.js - tone mapping, UltraHDR loader, EXR loader, example images.
  • Gainmap.js - Ultra HDR loading, saving, XMP metadata structure and JPEG-R assembly (reference implementation).
  • OpenEXR - EXR encoding/decoding for all the various compression formats, example images.

Releases

See RELEASING.md for how releases are published and GitHub Releases for changes.

Contribution

See Contributing Guide.

License

MIT

Author

Ben Houston, Sponsored by Land of Assets.