Du kannst in openHAB unmittelbar zwischen drei verschiedenen UIs wählen, Main UI (Dein Screenshot zeigt die Main UI Übersichtsseite), HABPanel und Basic UI.
Die Basic UI ist die Fortentwicklung der Classic UI, welche es schon unter openHAB1 gab. Die Basic UI nutzt deshalb die gleiche Technik. das sind Sitemaps (Site -> Anwesen, Liegenschaft, Grundstück...; Map -> Karte). Sitemaps werden als Textdatei angelegt, wobei openHAB3 über die UI etwas Unterstützung dabei bietet. Das Format ist aber immer noch das gleiche wie bei openHAB1. Basic UI stellt eine begrenzte Zahl an Widgets zur Verfügung, mit der sich alle Itemarten darstellen lassen, allerdings gibt nur sehr eingeschränkte Möglichkeiten, das Aussehen anzupassen. Dafür kann man eine Sitemap aber sehr einfach erstellen, mit einem Editor, der den Code falten kann, hat man schon beim Betrachten der Codezeilen eine ungefähre Vorstellung, wie die Sitemap aussehen wird.
HABPanel nutzt eine andere Methode der Konfiguration, man legt die Panels direkt im HABPanel an. Man kann sich eigene Widgets erstellen und aus einer Vielzahl bereits von anderen erstellter Widgets auswählen. Allerdings sollte man einigermaßen fit in html sein, wenn man solche Widgets selbst erstellen will - und ob der wesentlich höheren Komplexität ist auch die Konfiguration wesentlich zeitaufwändiger.
HABPanel lässt sich sehr exakt konfigurieren, allerdings muss man für jedes Gerät ein eigenes Panel definieren (bzw. zumindest für jede Darstellungsgröße), denn HABPanel kann die Ansicht nicht dynamisch an die Auflösung anpassen
Es gibt Gerüchte, dass HABPanel irgendwann verschwindet. Gut, solche Gerüchte gab es auch schon bei anderen Bereichen von openHAB... Die Main UI ist (noch) kein vollwertiger Ersatz für HABPanel, aber sie kommt schon jetzt recht nah dran

und je nach Veranlagung

ist die Main UI einfacher zu programmieren. Auch für die Main UI gibt es zahlreiche Widgets, die von Usern für User zur Verfügung gestellt werden, die Main UI ist aber komplett in openHAB integriert und kann sich dynamisch an das Ausgabegerät anpassen.
Die Apps für Smartphone und Tablet können meines Wissens inzwischen alle mit allen drei Formen der Darstellung umgehen.
Aber... Wenn Du schon eine MagicMirror laufen hast... gewöhnlich wird man dann die Werte aus openHAB per API Zugriff auslesen (alternativ könnte openHAB sie z.B. auch per mqtt bereitstellen, falls der MagicMirror das als Schnittstelle unterstützt) und dann die Darstellung von der MagicMirror Software übernehmen lassen. Klar kannst Du die Main UI auf Dark Mode umschalten, dennoch werden etliche Flächen dann nicht schwarz, sondern lediglich dunkelgrau gerendert. Das wird auf einem MagicMirror evtl. nicht so gut aussehen, wie man es nativ hinbekäme.