(1) Size efficient
(2) Multi operating system
(3) Graphical User Interface
Choose two.
If (3) is a must have, then chromium is the only game in town. However if we're targeting an audience that feels comfortable with terminals, then ANSI interfaces are well-standardized, widely supported, and work great. One good example of an app written in such a way is the redbean web server (https://justine.storage.googleapis.com/redbean/index.html) where your web gui can be bundled inside an executable zip file and the user just launches it locally via chrome, and it can access any native things you need.
If (3) is a must have, then chromium is the only game in town. However if we're targeting an audience that feels comfortable with terminals, then ANSI interfaces are well-standardized, widely supported, and work great. One good example of an app written in such a way is the redbean web server (https://justine.storage.googleapis.com/redbean/index.html) where your web gui can be bundled inside an executable zip file and the user just launches it locally via chrome, and it can access any native things you need.