Compare GWT to these popular alternatives based on real-world usage and developer feedback.

AngularJS lets you write client-side web applications as if you had a smarter browser. It lets you use good old HTML (or HAML, Jade and friends!) as your template language and lets you extend HTML’s syntax to express your application’s components clearly and succinctly. It automatically synchronizes data from your UI (view) with your JavaScript objects (model) through 2-way data binding.

It is a library for building interactive web interfaces. It provides data-reactive components with a simple and flexible API.

jQuery is a cross-platform JavaScript library designed to simplify the client-side scripting of HTML.

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.
Whether you're building highly interactive web applications or you just need to add a date picker to a form control, jQuery UI is the perfect choice.

Backbone supplies structure to JavaScript-heavy applications by providing models key-value binding and custom events, collections with a rich API of enumerable functions, views with declarative event handling, and connects it all to your existing application over a RESTful JSON interface.

It is a TypeScript-based open-source web application framework. It is a development platform for building mobile and desktop web applications.

It gives you a customizable select box with support for searching, tagging, remote data sets, infinite scrolling, and many other highly used options. It comes with support for RTL environments, searching with diacritics and over 40 languages built-in.

Prototype is a JavaScript framework that aims to ease development of dynamic web applications. It offers a familiar class-style OO framework, extensive Ajax support, higher-order programming constructs, and easy DOM manipulation.

It is a free, open source JavaScript and CSS library for building richly interactive web applications. Its lightweight core and modular architecture make it scalable, fast, and robust.

If you've ever built a JavaScript application, the chances are you've encountered – or at least heard of – frameworks like React, Angular, Vue and Ractive. Like Svelte, these tools all share a goal of making it easy to build slick interactive user interfaces. Rather than interpreting your application code at run time, your app is converted into ideal JavaScript at build time. That means you don't pay the performance cost of the framework's abstractions, or incur a penalty when your app first loads.

A JavaScript framework that does all of the heavy lifting that you'd normally have to do by hand. There are tasks that are common to every web app; It does those things for you, so you can focus on building killer features and UI.

Preact is an attempt to recreate the core value proposition of React (or similar libraries like Mithril) using as little code as possible, with first-class support for ES2015. Currently the library is around 3kb (minified & gzipped).

Create React apps with no build configuration.

Flux is the application architecture that Facebook uses for building client-side web applications. It complements React's composable view components by utilizing a unidirectional data flow. It's more of a pattern rather than a formal framework, and you can start using Flux immediately without a lot of new code.

Quick setup for new performance orientated, offline–first React.js applications featuring Redux, hot–reloading, PostCSS, react-router, ServiceWorker, AppCache, FontFaceObserver and Mocha.

It is a JavaScript library that helps you to create rich, responsive display and editor user interfaces with a clean underlying data model. Any time you have sections of UI that update dynamically (e.g., changing depending on the user’s actions or when an external data source changes), it can help you implement it more simply and maintainably.

Fast, light, complete: 70+ jQuery-based UI widgets in one powerful toolset. AngularJS integration, Bootstrap support, mobile controls, offline data solution.

While 100% jQuery coverage is not a design goal, the APIs provided match their jQuery counterparts. The goal is to have a ~5-10k modular library that downloads and executes fast, with a familiar and versatile API, so you can concentrate on getting stuff done.

Instead of writing reducers, caching logic, timers, retry logic, complex async/await scripting (I could keep going...), you literally write a tiny fraction of the code you normally would. You will be surprised at how little code you're writing or how much code you're deleting when you use this tool.

Aurelia is a next generation JavaScript client framework that leverages simple conventions to empower your creativity.

Semantic UI React is the official React integration for Semantic UI. jQuery Free, Declarative API, Shorthand Props, and more.

Never again communicate with your data store using an imperative API. Simply declare your data requirements using GraphQL and let Relay figure out how and when to fetch your data.

It is integrated completely into all the web standards of the browser allowing GPU accelerated usage of physics and image processing and effects as part of the web page canvas. Its elements can be mixed with other HTML elements.

It is a JavaScript library with a RESTful JSON interface and is based on the Model–view–presenter application design paradigm. Backbone is known for being lightweight, as its only hard dependency is on one JavaScript library, Underscore.js, plus jQuery for use of the full library.

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

Stimulus is a JavaScript framework with modest ambitions. It doesn't seek to take over your entire front-end—in fact, it's not concerned with rendering HTML at all.

Riot brings custom tags to all browsers. Think React + Polymer but with enjoyable syntax and a small learning curve.

It is a rugged, minimal tool for composing behavior directly in your markup. Think of it like jQuery for the modern web. Plop in a script tag and get going.

Mithril is around 12kb gzipped thanks to its small, focused, API. It provides a templating engine with a virtual DOM diff implementation for performant rendering, utilities for high-level modelling via functional composition, as well as support for routing and componentization.

It is a fast and cross-platform framework for building incredible, powerful JavaScript applications. it is the most lightweight framework available anywhere.

Tiny size(4KB gzip). Reactive data-binding. Based on Shadow Dom. Shadow DOM merges with Virtual DOM, Omi uses both virtual DOM and real Shadow DOM to make view updates more accurate and faster.

It is a JavaScript library for creating high-performance animations that work in every major browser. It delivers advanced sequencing, reliability, API efficiency, and tight control while solving real-world problems. It works around countless browser inconsistencies.

It is a declarative JavaScript library for creating user interfaces. It does not use a Virtual DOM. Instead it opts to compile its templates down to real DOM nodes and wrap updates in fine grained reactions. This way when your state updates only the code that depends on it runs.

Yoga is a cross-platform layout engine which implements Flexbox. Yoga enables maximum collaboration within your team by implementing an API familiar to many designers and opening it up to developers across different platforms.
A light weight JavaScript library that turns an HTML element. This means that a user can drag and drop a file onto it, and the file gets uploaded to the server via AJAX.

It is a Higher Order Component using react-redux to keep form state in a Redux store. It works with React Redux to enable an html form in React to use Redux to store all of its state.

Matter is a tiny collection of UI components. The components are built with Deku.

It is Ultra lightweight, customizable, simple autocomplete widget with zero dependencies, built with modern standards for modern browsers.

It is a JavaScript library that makes it easy to sort, filter, and add Masonry layouts to items on a webpage

It provides interactive object model on top of canvas element. Fabric also has SVG-to-canvas (and canvas-to-SVG) parser. Using Fabric.js, you can create and populate objects on canvas; objects like simple geometrical shapes
Draggable is a modular drag & drop library, allowing you to start small and build up with the features you need. At its most basic, Draggable gives you drag & drop functionality, fast DOM reordering, accessible markup, and a bundle of events to grab on to.

It offers the best developer experience, lets you focus on business needs, and build delightful user interfaces.

It adds many components to extend Angular. It doesn't use jQuery and are directives built from the ground up for each of the Bootstrap JS components.

Out of the box, Hyperapp combines state management with a VDOM engine that supports keyed updates & lifecycle events — all with no dependencies.

It is an Open Source JavaScript UI library, maintained by SAP. It lets you build enterprise-ready web applications, responsive to all devices, running on almost any browser of your choice. It’s based on JavaScript, using JQuery as its foundation and follows web standards. It eases your development with a client-side HTML5 rendering library including a rich set of controls and supports data binding to different models (JSON, XML and OData).

It is a framework for building web applications of all sizes, with a beautiful development experience and flexible filesystem-based routing. Unlike single-page apps, Sapper doesn't compromise on SEO, progressive enhancement or the initial load experience — but unlike traditional server-rendered apps, navigation is instantaneous for that app-like feel.

Blueprint is a React UI toolkit for the web. It is optimized for building complex, data-dense web interfaces for desktop applications. If you rely heavily on mobile interactions and are looking for a mobile-first UI toolkit, this may not be for you.

Durandal is a cross-device, cross-platform client framework written in JS and designed to make Single Page Applications (SPAs) easy to create and maintain.

Marko is a really fast and lightweight HTML-based templating engine that compiles templates to readable Node.js-compatible JavaScript modules, and it works on the server and in the browser. It supports streaming, async rendering and custom tags.