It’s mostly history as to why there are two.
Universal Dashboard started out with Materialize (another framework) and when v3 was released, it moved to Material-UI. This was a significant rewrite.
Universal Automation started out with Ant Design for the admin console.
When the decision was made to merge them, it didn’t make sense to completely rewrite the UD dashboard framework (again) or the UA Admin Console.
The ud-factory project was a test to see if it was possible but is far from complete.
I’d honestly love if we used AntD for UD since it would help simplify development and give it a consistent look.
We do have some plans to begin to simplify things but it won’t replace MUI with AntD: Reduce Complexity of Universal Dashboard · Issue #554 · ironmansoftware/issues · GitHub
One thing I regret a bit is making the PowerShell interface so deeply tied to MUI. If it was a bit more generic, I think it would make sense to provide skins based on different UI frameworks without changing the PowerShell commands.
The reason pages are the way they are is because they are really just an extension of the admin console. This makes it much easier to move quickly developing features and you get the consistent look of AntD. The reason we started down the pages route was that developing a drag and drop designer for UD is difficult. Creating something that effectively reads and generates PowerShell is difficult. That said, I hope to eventually support putting UD components into pages.
This would give you the freedom to create complex components with PowerShell script but insert them into the page using the designer. Once we merge the react apps together, this will be possible.