Hacker News new | ask | show | jobs
by parro-it 2974 days ago
Some days ago I started a N-API version of the bindings: https://github.com/parro-it/libui-napi

Is still really incomplete compared to libui-node, but just in case someone wants to help

1 comments

Is it a pretty simple re-write or something that requires a lot of c wizardry?
Not a simple rewrite, but neither a task that require a C wizard... The current version of libui-node implements C++ classes that wraps libui C function. They are exposed directly to JS. This experiment implements N-API C functions that wraps libui C function. Then, a set of JS classes wrap them, offering the same public API as libui-node.

Currently, I implemented windows, boxes, and multiline entry. I have to compare this experiment with the curent implementation in terms of erformance, memory consuption etc. before to decide to continue with N-API or not.

FYI, I just wrote the comparison I was speaking above: https://github.com/parro-it/libui-napi/issues/11
Pretty impressive results!
Yes, N-API seems to be superior. And it's a particular good fit because libui itself has a C API