Top
Best
New

Posted by holg 1 day ago

Show HN: Rust/WASM lighting data toolkit – parses legacy formats, generates SVGs(eulumdat.icu)
Hi HN, I'm Holger, a developer who worked in the lighting industry.

I built this to scratch my own itch and put it on crates.io and PyPI where nothing like it existed.

The old file formats (EULUMDAT from 1990, IES from 1991) still work fine for basic photometry. But the industry is moving toward spectral data – full wavelength distributions instead of just lumen values.

The new standards (TM-33, ATLA-S001) are barely supported by existing tools.

So this handles both: legacy formats for compatibility, spectral data for anyone who wants to work with the new standards.

Stack: Rust core, then UniFFI for bindings. One codebase compiles to WASM/Leptos, egui, SwiftUI, Jetpack Compose, PyO3.

At one point the generated Swift boilerplate got so large GitHub classified it as a Swift project. 3D viewer is Bevy, loaded on-demand.

Feedback welcome – especially on the SVG output and the 3D viewer.

https://github.com/holg/eulumdat-rs (MIT/Apache-2.0)

47 points | 5 comments
huem0n 20 hours ago|
What conditions/what problem/who want to use this? It looks cool, I just have no context. Is it for game dev? Lightbulb manufactures?
holg 16 hours ago||
Thanks! For gaming: the Bevy demo shows how to calculate real lighting using exact technical parameters from actual products. for sure it is technical, but the point is it doesn't have to be a big Windows-only app – an installer can estimate what to put where using real data, just in the browser. These files tell much more than a product picture. Lighting engineers and manufacturers can use it too, though they'd likely want consulting or custom integration, or at least would need some kind of customizable reporting (For Mac there's also a QuickLook extension to browse files visually.)
holg 19 hours ago|||
Thanks! For gaming: the Bevy demo shows how to calculate real lighting using exact technical parameters from actual products.

for sure it is technical, but the point is it doesn't have to be a big Windows-only app – an installer can estimate what to put where using real data, just in the browser. These files tell much more than a product picture.

Lighting engineers and manufacturers can use it too, though they'd likely want consulting or custom integration, or at least would need some kind of customizable reporting (For Mac there's also a QuickLook extension to browse files visually.)

mvid 17 hours ago||
I am also curious about this. I have worked with wasm and rust, but this product seems alien and fascinating to me
holg 16 hours ago||
Oh well, it is open source, you are welcome to have a look.. the web part is done in Leptos, the 3D part in Bevy. Most of it (as much as possible, to share across) is simple Rust. pyo3 makes it the python-module uniffi makes the bindings, to Swift/Kotlin the adaption of it even for CangJue (the Huawei HarmonyOs) So basically well known and very good Open Source For wasm to mention, i use wasm-split (the bevy part is quite big and loaded optionally, something like pdf exporter as well should go like this) Brotli compression is very much recommended, specifically for bevy and font stuff, where it shines compared to zip (sth like 55% savings on zip, but 70% with brotli)
pouqggjr 1 day ago|
[flagged]