Webix Jet was used to create these complex widgets:
Webix Jet allows you to separate UI and logic into isolated modules that can be combined or reused in other apps. You can read more about modules in Jet:
Apps, views and other modules are implemented as ES6 classes. You can use OOP features for module extension.
Webix Jet provides plugins for common tasks such as creating menus, warnings about unsaved data, status of data loading, navigation, multiple locales, guards, and more.
In addition to built-in plugins you can create your own to deal with other tasks.
Read more about Plugins.
To manipulate the URL, Webix Jet views have routers. There are four predefined types but you can also create custom ones. Read more about routers in the corresponding article.
Webix app has an event system that can be used for various tasks and error handling. You can also enable the debug mode for detailed error logs.
Details on debugging and event handling.