Hi Sandy, welcome to the discussion.
Dashboard uses the Angular v1 framework which you could also use in uibuilder (since it doesn't care what framework, if any, that you use). However, Dashboard works completely differently to uibuilder in that it pushes code to the front-end. I think this is a strong anti-pattern so uibuilder was set up such that your front-end code is developed in a much more standard way. You create files that the uibuilder node serves up to your browser using the built-in ExpressJS service. So you can use standard web development tooling to develop your front-end code, uibuilder acts as the glue that ties everything together.
Now, it is possible to create "components" that would work similarly to Dashboard's widgets (though you wouldn't normally want to send that code via the uibuilder websocket like Dashboard does). Indeed, I created an example component that mimics Bart's SVG node for Dashboard.
If ever life lets up a bit, or others decide to jump in and help, I've plenty of plans to create other components to make using uibuilder easier to use for non-coders. Each component would be front-end code though and not a new node. That's because we only need to agree a standard for the data that flows between the uibuilder node and the front-end component, we don't need to pass the full code. That would mean that it would be installed via uibuilder's library manager (or manually using npm on the command line) rather than as another Node-RED node.