I completed the initial implementation of windows, boxes and multiline entry.
I then created a new branch from 0_3_0 branch of libui-node, removed all the stuff except windows, boxes and multiline entry.
Here is a comparison of the two implementation to help decide if the N-API rewrite is worth the effort:
nbind version
binary size: 627Kb
compilation time: 39s
runtime memory consuption of example.js: 21M
N-API version
binary size 56Kb
compilation time: 7s
runtime memory consuption of example.js: 18M
Considering also that N-API greatly simplify publish of prebuilt binaries, and that it offer much control on memory management and type conversion, my opinion is that the conversion it's totally
worth the effort.
I completed the initial implementation of windows, boxes and multiline entry.
I then created a new branch from 0_3_0 branch of libui-node, removed all the stuff except windows, boxes and multiline entry.
Here is a comparison of the two implementation to help decide if the N-API rewrite is worth the effort:
nbind version
binary size: 627Kb
compilation time: 39s
runtime memory consuption of example.js: 21M
N-API version
binary size 56Kb
compilation time: 7s
runtime memory consuption of example.js: 18M
Considering also that N-API greatly simplify publish of prebuilt binaries, and that it offer much control on memory management and type conversion, my opinion is that the conversion it's totally
worth the effort.