Ported from Go to WebAssembly, this is the second article in a series about Termina User Interfaces (TUIs) written in JavaScriptForms work better with Shared Libraries, as they are smaller compared to WebAssemblyTo use Shared Libraries in JavaScript, you will require Node.js with native module support and node-gyp for the C bindingsTheme customization can be achieved using the SetTheme function of the Charms libraryConfirmation Dialogs, Input Fields, Selection Components and Spinners can also be created using the Charms libraryValues from forms are stored in each component's value propertyMultiple groups can be created in Charms and passed to a single formValidators can be buggy on Linux, a good first issue to contribute to updating the documentationThe author plans to continue refining this tool to make it even more usefulThe article includes upcoming articles and series on Substack