Austauschbarkeit von UIKit

 
501stGG
Benutzer
Avatar
Geschlecht: keine Angabe
Homepage: forum.501st.de
Beiträge: 44
Dabei seit: 02 / 2019
Betreff:

Austauschbarkeit von UIKit

 · 
Gepostet: 20.04.2024 - 20:55 Uhr  ·  #1
Hi Chris,

mich würde interessieren, ob man UIKit ohne "große" Schwierigkeiten durch CSS-Bibliotheken, wie z. B. Bulma oder Shoelace ersetzen kann. Oder ist UIKit unabdingbarer Bestandteil von CBACK, weil es Abhängigkeiten im Code (z. b. UI-Klasse) gibt?

Und: Nee, keine Ahnung, was mich da geritten hat 🙈 Die Idee kam mir, als ich diese Woche auf Shoelace gestoßen bin 😇

Grüße

Michael
cback
Admin
Avatar
Geschlecht:
Herkunft: Saarland
Alter: 38
Homepage: cback.net
Beiträge: 17615
Dabei seit: 12 / 2003
Betreff:

Re: Austauschbarkeit von UIKit

 · 
Gepostet: 22.04.2024 - 11:39 Uhr  ·  #2
Hey Michael,

auweia, du kommst ja auf Ideen. ;)

Also UIKit ist die Basis des gesamten Frontends des Forums (einschließlich des ACP Templates) und wurde auch optimiert eingesetzt (nicht immer das ganze Teil laden), was zu einem großen Teil auch zu der schnellen Reaktionsfreudigkeit der Seite auf allen Geräten beiträgt. Außerdem ist es die Basis des kompletten Responsive-Verhaltens der Themes.

Mit dem PHP Backend hat es damit zwar nichts zu tun, aber halt mit dem gesamten Template-Konstrukt. Sortierfunktionen, Meldungsboxen, Buttons, alles mit dem uk- Prefix im CSS / Theme und dem ein oder anderen AJAX response handling. (Was einblenden, was ausblenden ... Du weißt schon, Fontend-Zeugs halt. :D)

Natürlich könntest Du es theoretisch ersetzen. Das bedeutet aber, dass Du jede Templatedatei neu bauen darfst und auch jede JavaScript Funktion, die ein Output über eine UIKit Lib erzeugt.

Wenn Du diese Aufgabe bezwungen hast (praktisch die Fassade eines Hauses abgerissen und neu aufgebaut hast), dann kannst Du dir danach bei jedem Software-Update die Haare raufen, weil die Theme-Codechanges nicht mehr auf dein alternatives Fontend-Konstrukt passen. Auch wird kein Plugin mehr passen, weil alle Plugins natürlich ebenfalls auf dem UIKit Baukasten basieren MÜSSEN (zwecks Kompatibilität zu ALLEN Themes, auch bei mehreren gleichzeitig) und die Plugins entsprechend auch die im CF4 standardisierten Klassen nutzen. Du müsstest also auch jede Templatedatei jedes Plugins anfassen und neu bauen, damit das künftig noch funktioniert. Und wenn die Plugins etwas mit JS machen ... you get the idea.


Also kurz gesagt: Es ist eigentlich eine wirklich ganz schlechte Idee und ich bin mir ziemlich sicher, in der Hölle gibt es definitiv einen Raum voll mit Programmierern, die darin genau diese Aufgabe ausführen und mit den Konsequenzen leben müssen. :D


Da aber sowohl der UIKit als auch der CF-Teil des CSS Codes geprefixed ist, sollte es vermutlich aber möglich sein, beide Librarys parallel zu verwenden. Macht aus meiner Sicht aber auch absolut keinen Sinn, weil dir UIKit auch schon alle Elemente liefert, Components, Plugin-Kompatiblität und du deine Seite natürlich langsamer und ladeintensiver machst, wenn du mit 2 Themekits gemeinsam arbeitest. Aber technisch wird's vermutlich funktionieren.


Aber trotzdem ... keine gute Idee.


Warum nicht einfach das vorhandene Theme einfach mehr nach deinem Gusto anpassen? Über die LESS Dateien kannst Du wirklich jedes Element komplett nach deinem Belieben anpassen, erweitern, etc. - In der miraUI.less und config.less sind sogar für fast alle Elemente Variablen zum anpassen vorhanden (und UIKit Components können dort auch hinzugefügt werden, die haben alle auch eigene config-vars oder hooks die man in dieser Datei einfach hinzufügen kann wenn nötig) - dann sieht es genau so aus wie Shoelace, bleibt aber kompatibel zu allen Plugins und Updates und vor allem: Es bleibt schnell und optimiert. Ich sehe da jetzt nichts, was sich nicht auch mit UIKit umsetzen ließe. Selbst wenn Du mal eine eigene component erweiterst wäre das definitiv weniger Arbeit, als das ganze Themekit einzureißen.

PS: Für die Variablen in der miraUI.less gibt's sogar einen schicken Baukasten für den einfacheren Start: https://getuikit.com/v2/docs/customizer.html ^_^

LG,
Chris
Gewählte Zitate für Mehrfachzitierung:   0

Registrierte in diesem Topic

Aktuell kein registrierter in diesem Bereich

Die Statistik zeigt, wer in den letzten 5 Minuten online war. Erneuerung alle 90 Sekunden.