Modalität ist die erste Webfx-Anwendung auf Unternehmensebene in der Entwicklung in der Entwicklung. Hier sind einige Drahtbeamte des Back-Office (WebFX stellt alle für diese UIS erforderlichen Komponenten an):
WebFX zielt nicht nur auf das Web ab. WebFX -Anwendungen können so kompiliert werden, dass sie auf 7 Plattformen von einer einzelnen Codebasis nativ ausgeführt werden!
| Plattform | 32 oder 64-Bit JRE | 64-Bit-Eingeborene |
|---|---|---|
| Desktops (Windows, MacOS & Linux) | ✅ | ✅ |
| Tablets & Mobile (Android & iOS) | ✅ | |
| Einbettung (Raspberry pi) ~ noch nicht dokumentiert | ✅ | ✅ |
| Web (Chrome, Firefox, Edge usw.) |
Sie können die Demos überprüfen, um zu sehen, wie ein Github -Workflow diese ausführbaren Ausführungen erzeugen kann. Zum Beispiel ist hier der GitHub -Workflow für die FX2048 -Demo und die ausgestellten ausgestellten, die er generiert hat.
WebFX kompiliert Ihre JavaFX -Anwendung zusammen mit dem WebFX -Kit - einer GWT -kompatiblen Version von OpenJFX.
Weitere Erläuterungen finden Sie in der Dokumentation.
Der Leitfaden zum Einstieg in die Dokumentation ist enthalten.
Obwohl das WebFX -Kit (dieses Repository) das Herzstück des Projekts ist, gibt es andere wichtige Repositorys, die zusammen das WebFX -Ökosystem umfassen. Weitere Informationen zu ihnen finden Sie auf Organisationsebene.
WebFX befindet sich noch in der Inkubationsphase. Sie können unsere Roadmap unten konsultieren. In diesem Stadium bieten wir nur Snapshot -Veröffentlichungen an, und bis zur ersten offiziellen Veröffentlichung können Bruchänderungen auftreten.
webfx.xml -Dateien ⓵ 100% = Nr. 3D, kein CSS. Javafx 3D kann nicht leicht auf HTML zugeordnet werden. Für CSS besteht der WebFX -Ansatz darin, sich auf HTML -CSS zu verlassen, anstatt Javafx CSS im Browser zu emulieren. Weitere Informationen zu diesem Ansatz finden Sie unter ⓽.
⓶ WebFX unterstützt die allgemeine Javafx-Controls-API (mit der Sie benutzerdefinierte Steuerelemente schreiben können). Bisher sind die unterstützten JavaFX -Steuerelemente: Schaltfläche, Kontrollkästchen, Radiobutton, ContextMenu, Etikett, Hyperlink, TextField, TextArea, Passwortfield, ProgressBar, Slider, ScrollPane, SplitPane & Tabpane.
⓷ FXML stützt sich auf Reflexion, das von Transpilern nicht unterstützt wird. Alternativ könnte WebFX FXML -Dateien in transpilierbaren Java -Code umwandeln. Mit diesem Ansatz wurde ein Prototyp mit einem Memory Game, einem FXML-basierten JavAFX-Spiel (siehe Arbeiten-Demo), verabreicht.
⓸ Es wird derzeit versucht, WebFX-Transpiler-Agnostic zu machen. J2CL (Nachfolger von GWT in aktiver Entwicklung) wird bald unterstützt. Dieser zukunftssichere Schritt wird auch alle nächsten Leckereien von J2Cl wie WebAssembly-Ziel (zusätzlich zu JavaScript) und der Kotlin-Sprache (zusätzlich zu Java) bringen.
⓹ TEAVM ist ein weiterer beliebter Transpiler. Während GWT & J2CL Java-Source-Transpiler sind, ist TEAVM ein Byte-Code-Transpiler, der die Tür zu anderen alternativen JVM-Sprachen wie Scala öffnet. Außerdem unterstützt TEAVM Java 21, einschließlich record und New switch -Ausdrücke.
⓺ Mit dem JxBrowser -Support bietet eine externe Webansicht, mit der Entwickler die Webversion ihrer WebFX -App direkt von Java ausführen, testen und debuggen können (keine Transpilation erforderlich!). Die IDE wird Ihre App einfach mit der WebFX-Kit-Laufzeit (anstelle von OpenJFX) im JVM ausführen, und der von WebFX generierte DOM wird in JxBrowser (einem von Java gesteuerten Browser auf Chromiumbasis) gerendert. Dies wird den Entwicklungszyklus von Web -Apps erheblich beschleunigen.
⓻ WebFX Extras bietet zusätzliche Funktionen für WebFX und einfachere alternative Steuerelemente für die komplexen JavaFX -Steuerelemente, die noch nicht unterstützt werden (z. B. einfaches Datengitter und Diagramme).
⓼ WebFX Stack bietet zusätzliche Funktionen auf Unternehmensebene wie: UI-Router, I18N, Validierung, Auth (N/Z) mit SSO-Support, clientseitigem ORM, DB-Zugriff, auf WebSocket-basierter Ereignisbus (für die Serverkommunikation-Fokus auf Vert.x) und Server-Push-Funktionen. WebFX Stack + Vert.x ist eine Java-Full-Stack-Lösung (ähnlich wie React + node.js).
⓽ WebFX CSS basiert auf Dual -Format: Javafx CSS & HTML CSS. WebFX -Entwickler müssen beide Formate schreiben. Obwohl es mehr Arbeit ist, ist dies der optimierteste Ansatz (die Emulation von Javafx -CSS und das Laden von Caspian.css im Browser wäre ein schwerer Ansatz). WebFX CSS bietet ein leichteres anfängliches CSS für JavaFX, das Caspian durch ein modernes, elegantes minimalistisches flaches Design ersetzt.
Einige Neugestaltungsarbeiten sind auch erforderlich, um den aktuellen Patching -Prozess (hauptsächlich ein manuelles Patch von OpenJFX 8) zu einem professionelleren Patching -Prozess mit Werkzeugen zu übertragen, wodurch das regelmäßige Wiederumbau auf OpenJFX ermöglicht wird.
Für Fragen oder Anfragen um Hilfe können Sie eine GitHub -Diskussion öffnen oder unseren #General -Chat -Kanal auf Discord verwenden. Sie können ein Problem öffnen, um einen Fehler zu melden oder eine Funktion anzufordern.
Abhängig davon, wie oft Sie Updates erhalten möchten, können Sie unser Blog (RSS - Niedriger Verkehr) abonnieren, @WebfxProject (x - mittelgroßer Verkehr) oder unserem #News -Kanal (Discord - höherer Verkehr) anschließen.
Sie können dem Projekt sehr helfen von:
Sie möchten sich auch in die Entwicklung einlassen? Sie sind sehr willkommen! Bitte lesen Sie unseren beitragenden Leitfaden.
WebFX ist eine kostenlose Open-Source-Software, die unter der Apache-Lizenz 2.0 lizenziert wurde