Alternatives to JavaFX logo

Alternatives to JavaFX

GWT, Vaadin, Qt, JSF, and Electron are the most popular alternatives and competitors to JavaFX.
201
251
+ 1
3

What is JavaFX and what are its top alternatives?

It is a set of graphics and media packages that enables developers to design, create, test, debug, and deploy rich client applications that operate consistently across diverse platforms.
JavaFX is a tool in the Cross-Platform Desktop Development category of a tech stack.

Top Alternatives to JavaFX

  • GWT

    GWT

    It is a development toolkit for building and optimizing complex browser-based applications. Its goal is to enable productive development of high-performance web applications without the developer having to be an expert in browser quirks, XMLHttpRequest, and JavaScript. ...

  • Vaadin

    Vaadin

    It is the fastest way to build web applications in Java. It automates the communication between your server and the browser and gives you a high-level component API for all Vaadin components ...

  • Qt

    Qt

    Qt, a leading cross-platform application and UI framework. With Qt, you can develop applications once and deploy to leading desktop, embedded & mobile targets. ...

  • JSF

    JSF

    It is used for building component-based user interfaces for web applications and was formalized as a standard through the Java Community ...

  • Electron

    Electron

    With Electron, creating a desktop application for your company or idea is easy. Initially developed for GitHub's Atom editor, Electron has since been used to create applications by companies like Microsoft, Facebook, Slack, and Docker. The Electron framework lets you write cross-platform desktop applications using JavaScript, HTML and CSS. It is based on io.js and Chromium and is used in the Atom editor. ...

  • Java

    Java

    Java is a programming language and computing platform first released by Sun Microsystems in 1995. There are lots of applications and websites that will not work unless you have Java installed, and more are created every day. Java is fast, secure, and reliable. From laptops to datacenters, game consoles to scientific supercomputers, cell phones to the Internet, Java is everywhere! ...

  • React

    React

    Lots of people use React as the V in MVC. Since React makes no assumptions about the rest of your technology stack, it's easy to try it out on a small feature in an existing project. ...

  • Spring

    Spring

    A key element of Spring is infrastructural support at the application level: Spring focuses on the "plumbing" of enterprise applications so that teams can focus on application-level business logic, without unnecessary ties to specific deployment environments. ...

JavaFX alternatives & related posts

GWT logo

GWT

63
64
0
An open-source set of tools to create and maintain complex JavaScript front-end applications
63
64
+ 1
0
PROS OF GWT
    Be the first to leave a pro
    CONS OF GWT
      Be the first to leave a con

      related GWT posts

      Vaadin logo

      Vaadin

      122
      174
      26
      Components and tools for building web apps in Java
      122
      174
      + 1
      26
      PROS OF VAADIN
      • 6
        Java
      • 5
        Compatibility
      • 4
        Components
      • 4
        Open Source
      • 2
        Example packages
      • 2
        Performance
      • 2
        Abstraction
      • 1
        OSGI Support
      CONS OF VAADIN
      • 3
        Paid for more features

      related Vaadin posts

      Qt logo

      Qt

      294
      386
      74
      A leading cross-platform application and UI framework
      294
      386
      + 1
      74
      PROS OF QT
      • 11
        High Performance
      • 9
        Performance
      • 9
        Declarative, easy and flexible UI
      • 8
        Cross platform
      • 6
        Up to date framework
      • 6
        Easiest integration with C++
      • 6
        Fast prototyping
      • 4
        Safe 2D Renderer
      • 4
        Python
      • 3
        Great Community Support
      • 3
        HW Accelerated UI
      • 3
        Multiple license including Open Source and Commercial
      • 2
        JIT and QML Compiler
      • 0
        Game Engine like UI system
      • 0
        From high to low level coding
      • 0
        Great mobile support with Felgo add-on
      • 0
        True cross-platform framework with native code compile
      • 0
        Been using it since the 90s - runs anywhere does it all
      • 0
        Easy Integrating to DX and OpenGL and Vulkan
      CONS OF QT
      • 4
        C++ is not so productive
      • 3
        Paid
      • 1
        Lack of libraries
      • 1
        Not detailed documentation
      • 1
        Lack of community support

      related Qt posts

      JSF logo

      JSF

      105
      138
      3
      It is used for building component-based web interfaces
      105
      138
      + 1
      3
      PROS OF JSF
      • 1
        Rich and comprehensive Request Life-cycle
      • 1
        Very Mature UI framework
      • 1
        Server Side component
      CONS OF JSF
        Be the first to leave a con

        related JSF posts

        Electron logo

        Electron

        6.9K
        6.2K
        128
        Build cross platform desktop apps with JavaScript, HTML, and CSS
        6.9K
        6.2K
        + 1
        128
        PROS OF ELECTRON
        • 63
          Easy to make rich cross platform desktop applications
        • 48
          Open source
        • 10
          Great looking apps such as Slack and Visual Studio Code
        • 4
          Because it's cross platform
        • 3
          Use Node.js in the Main Process
        CONS OF ELECTRON
        • 14
          Uses a lot of memory
        • 7
          User experience never as good as a native app
        • 4
          No proper documentation
        • 4
          Does not native

        related Electron posts

        Slack's new desktop application was launched for macOS. It was built using Electron for a faster, frameless look with a host of background improvements for a superior Slack experience. Instead of adopting a complete-in-box approach taken by other apps, Slack prefers a hybrid approach where some of the assets are loaded as part of the app, while others are made available remotely. Slack's original desktop app was written using the MacGap v1 framework using WebView to host web content within the native app frame. But it was difficult to upgrade with new features only available to Apple's WKWebView and moving to this view called for a total application rewrite.

        Electron brings together Chromium's rendering engine with the Node.js runtime and module system. The new desktop app is now based on an ES6 + async/await React application is currently being moved gradually to TypeScript. Electron functions on Chromium's multi-process model, with each Slack team signed into a separate process and memory space. It also helps prevent remote content to directly access desktop features using a feature called WebView Element which creates a fresh Chromium renderer process and assigns rendering of content for its hosting renderer. Additional security can be ensured by preventing Node.js modules from leaking into the API surface and watching out for APIs with file paths. Communication between processes on Electron is carried out via electron-remote, a pared-down, zippy version of Electron's remote module, which makes implementing the web apps UI much easier.

        See more

        The Slack desktop app was originally written us the MacGap framework, which used Apple’s WebView to host web content inside of a native app frame. As this approach continued to present product limitations, Slack decided to migrate the desktop app to Electron. Electron is a platform that combines the rendering engine from Chromium and the Node.js runtime and module system. The desktop app is written as a modern ES6 + async/await React application.

        For the desktop app, Slack takes a hybrid approach, wherein some of the assets ship as part of the app, but most of their assets and code are loaded remotely.

        See more
        Java logo

        Java

        81K
        59.6K
        3.5K
        A concurrent, class-based, object-oriented, language specifically designed to have as few implementation dependencies as possible
        81K
        59.6K
        + 1
        3.5K
        PROS OF JAVA
        • 576
          Great libraries
        • 436
          Widely used
        • 396
          Excellent tooling
        • 380
          Huge amount of documentation available
        • 329
          Large pool of developers available
        • 198
          Open source
        • 194
          Excellent performance
        • 150
          Great development
        • 144
          Used for android
        • 143
          Vast array of 3rd party libraries
        • 54
          Compiled Language
        • 46
          Used for Web
        • 43
          Managed memory
        • 42
          Native threads
        • 41
          High Performance
        • 36
          Statically typed
        • 32
          Easy to read
        • 30
          Great Community
        • 26
          Reliable platform
        • 23
          JVM compatibility
        • 23
          Sturdy garbage collection
        • 19
          Cross Platform Enterprise Integration
        • 18
          Universal platform
        • 16
          Good amount of APIs
        • 16
          Great Support
        • 11
          Lots of boilerplate
        • 10
          Backward compatible
        • 10
          Great ecosystem
        • 9
          Everywhere
        • 7
          Excellent SDK - JDK
        • 6
          Mature language thus stable systems
        • 5
          Cross-platform
        • 5
          Portability
        • 5
          Better than Ruby
        • 5
          Static typing
        • 5
          It's Java
        • 5
          Clojure
        • 4
          Vast Collections Library
        • 4
          Long term language
        • 4
          Old tech
        • 3
          Best martial for design
        • 3
          Great Structure
        • 3
          Most developers favorite
        • 3
          Stable platform, which many new languages depend on
        • 3
          Used for Android development
        • 2
          Testable
        • 1
          Javadoc
        CONS OF JAVA
        • 29
          Verbosity
        • 24
          NullpointerException
        • 15
          Overcomplexity is praised in community culture
        • 14
          Nightmare to Write
        • 10
          Boiler plate code
        • 8
          Classpath hell prior to Java 9
        • 6
          No REPL
        • 4
          No property
        • 2
          Code are too long
        • 2
          There is not optional parameter
        • 2
          Floating-point errors
        • 1
          Terrbible compared to Python/Batch Perormence
        • 1
          Java's too statically, stronglly, and strictly typed
        • 1
          Non-intuitive generic implementation
        • 1
          Returning Wildcard Types

        related Java posts

        Conor Myhrvold
        Tech Brand Mgr, Office of CTO at Uber · | 38 upvotes · 3.7M views

        How Uber developed the open source, end-to-end distributed tracing Jaeger , now a CNCF project:

        Distributed tracing is quickly becoming a must-have component in the tools that organizations use to monitor their complex, microservice-based architectures. At Uber, our open source distributed tracing system Jaeger saw large-scale internal adoption throughout 2016, integrated into hundreds of microservices and now recording thousands of traces every second.

        Here is the story of how we got here, from investigating off-the-shelf solutions like Zipkin, to why we switched from pull to push architecture, and how distributed tracing will continue to evolve:

        https://eng.uber.com/distributed-tracing/

        (GitHub Pages : https://www.jaegertracing.io/, GitHub: https://github.com/jaegertracing/jaeger)

        Bindings/Operator: Python Java Node.js Go C++ Kubernetes JavaScript OpenShift C# Apache Spark

        See more
        Kamil Kowalski
        Lead Architect at Fresha · | 27 upvotes · 938.9K views

        When you think about test automation, it’s crucial to make it everyone’s responsibility (not just QA Engineers'). We started with Selenium and Java, but with our platform revolving around Ruby, Elixir and JavaScript, QA Engineers were left alone to automate tests. Cypress was the answer, as we could switch to JS and simply involve more people from day one. There's a downside too, as it meant testing on Chrome only, but that was "good enough" for us + if really needed we can always cover some specific cases in a different way.

        See more
        React logo

        React

        98.4K
        77.5K
        3.8K
        A JavaScript library for building user interfaces
        98.4K
        77.5K
        + 1
        3.8K
        PROS OF REACT
        • 751
          Components
        • 651
          Virtual dom
        • 558
          Performance
        • 484
          Simplicity
        • 436
          Composable
        • 174
          Data flow
        • 159
          Declarative
        • 123
          Isn't an mvc framework
        • 113
          Reactive updates
        • 110
          Explicit app state
        • 31
          JSX
        • 23
          Learn once, write everywhere
        • 18
          Uni-directional data flow
        • 16
          Easy to Use
        • 14
          Works great with Flux Architecture
        • 10
          Great perfomance
        • 8
          Built by Facebook
        • 6
          Javascript
        • 5
          TypeScript support
        • 5
          Speed
        • 4
          Awesome
        • 4
          Easy to start
        • 4
          Feels like the 90s
        • 4
          Scalable
        • 3
          Functional
        • 3
          Server side views
        • 3
          Hooks
        • 3
          Fancy third party tools
        • 2
          Props
        • 2
          Simple
        • 2
          Has functional components
        • 2
          Great migration pathway for older systems
        • 2
          SSR
        • 2
          Fast evolving
        • 2
          Simple, easy to reason about and makes you productive
        • 2
          Very gentle learning curve
        • 2
          Excellent Documentation
        • 2
          Rich ecosystem
        • 2
          Super easy
        • 2
          Has arrow functions
        • 2
          Strong Community
        • 2
          Closer to standard JavaScript and HTML than others
        • 2
          Scales super well
        • 2
          Just the View of MVC
        • 2
          Server Side Rendering
        • 2
          Cross-platform
        • 1
          Sharable
        • 1
          Start simple
        • 1
          Obama
        • 1
          Every decision architecture wise makes sense
        • 1
          Permissively-licensed
        • 1
          Beautiful and Neat Component Management
        • 1
          Fragments
        • 1
          Sdfsdfsdf
        • 1
          Allows creating single page applications
        • 1
          Split your UI into components with one true state
        CONS OF REACT
        • 32
          Requires discipline to keep architecture organized
        • 20
          No predefined way to structure your app
        • 19
          Need to be familiar with lots of third party packages
        • 6
          JSX
        • 6
          Not enterprise friendly
        • 1
          One-way binding only
        • 1
          State consistency with backend neglected

        related React posts

        Vaibhav Taunk
        Team Lead at Technovert · | 31 upvotes · 1.5M views

        I am starting to become a full-stack developer, by choosing and learning .NET Core for API Development, Angular CLI / React for UI Development, MongoDB for database, as it a NoSQL DB and Flutter / React Native for Mobile App Development. Using Postman, Markdown and Visual Studio Code for development.

        See more
        Johnny Bell
        Software Engineer at Weedmaps · | 26 upvotes · 382.3K views
        Shared insights
        on
        Vue.js
        React

        I've used both Vue.js and React and I would stick with React. I know that Vue.js seems easier to write and its much faster to pick up however as you mentioned above React has way more ready made components you can just plugin, and the community for React is very big.

        It might be a bit more of a steep learning curve for your friend to learn React over Vue.js but I think in the long run its the better option.

        See more
        Spring logo

        Spring

        3.1K
        3.6K
        1K
        Provides a comprehensive programming and configuration model for modern Java-based enterprise applications
        3.1K
        3.6K
        + 1
        1K
        PROS OF SPRING
        • 219
          Java
        • 153
          Open source
        • 131
          Great community
        • 118
          Very powerful
        • 110
          Enterprise
        • 61
          Lot of great subprojects
        • 58
          Easy setup
        • 44
          Convention , configuration, done
        • 37
          Standard
        • 29
          Love the logic
        • 10
          Dependency injection
        • 10
          Good documentation
        • 9
          Stability
        • 6
          Easy
        • 6
          MVC
        • 3
          Makes the hard stuff fun & the easy stuff automatic
        • 3
          Strong typing
        • 2
          Great Desgin
        • 2
          Maven
        • 2
          Easy Integration with Spring Security
        • 2
          Integrations with most other Java frameworks
        • 1
          Live project
        • 1
          Supports vast databases
        • 1
          Best practices
        • 1
          Large ecosystem with seamless integration
        • 1
          Java has more support and more libraries
        • 1
          Code maintenance
        • 1
          OracleDb integration
        CONS OF SPRING
        • 13
          Draws you into its own ecosystem and bloat
        • 2
          Verbose configuration
        • 2
          Poor documentation
        • 1
          Java

        related Spring posts

        Is learning Spring and Spring Boot for web apps back-end development is still relevant in 2021? Feel free to share your views with comparison to Django/Node.js/ ExpressJS or other frameworks.

        Please share some good beginner resources to start learning about spring/spring boot framework to build the web apps.

        See more

        I am consulting for a company that wants to move its current CubeCart e-commerce site to another PHP based platform like PrestaShop or Magento. I was interested in alternatives that utilize Node.js as the primary platform. I currently don't know PHP, but I have done full stack dev with Java, Spring, Thymeleaf, etc.. I am just unsure that learning a set of technologies not commonly used makes sense. For example, in PrestaShop, I would need to work with JavaScript better and learn PHP, Twig, and Bootstrap. It seems more cumbersome than a Node JS system, where the language syntax stays the same for the full stack. I am looking for thoughts and advice on the relevance of PHP skillset into the future AND whether the Node based e-commerce open source options can compete with Magento or Prestashop.

        See more