CheerpJ is
-
the Java compiler for the Web
-
converts any Java client application into standard HTML5/WebAssembly/JavaScript
-
works from Java bytecode, without requiring access to the source code
-
compatible with 100% of Java (reflection and dynamic classes included)
-
turn-key solution, works on Java Swing clients, Java applets, and Java libraries
-
actively developed and supported by Leaning Technologies experts

The solution for converting Java clients to HTML5
100% of Java SE
Reflections, proxy classes, multi-threading are all supported thanks to unique technical solutions.
Performance oriented
Based on both WebAssembly and highly-optimised JavaScript, CheerpJ can achieve excellent runtime performance and a small download footprint.
Full runtime environment
Based on a full, unmodified OpenJDK runtime environment: supports Swing, Filesystem, Audio, Printing.
First class HTML5 interoperability
Access the DOM, WebAPIs (e.g. WebGL, WebAudio) and browser resources from Java. Make Java calls from JavaScript.
Browsers as compilation target
CheerpJ converts your Java client into a standard HTML5, automatically. No longer ask your end users to maintain a local Java installation.
Convert or migrate
Convert full applications or individual components (such as libraries) and expose JavaScript APIs to use them from HTML5.
Three key components
Ahead-of-Time
compilation
The CheerpJ compiler processes your Java bytecode ahead of time, generating optimised JavaScript that can run on any browser.
CheerpJ Runtime
In parallel to your converted application, deploy a higly-optimised runtime in WebAssembly and JavaScript, keeping 100% of the execution client-side. Based on a full unmodified build of OpenJDK .
On-line
CheerpJ Java compiler
Whenever new classes are generated (e.g. through proxy classes), CheerpJ will convert them on the fly for you.
Thanks to these three components, CheerpJ provides a seamless experience of executing a converted Java application on any browser, fully client-side. No plugins and no installation are required from the user.
Licences
CheerpJ is free to use for non-commercial purposes, as well as for technical evaluation. Any other use will require a license.
Community
-
Command line CheerpJ utilities
-
Cloud-hosted CheerpJ Runtime
-
Documentation and tutorials
-
Community support on Gitter
-
Available for technical evaluations
Essential
-
Command line CheerpJ utilities
-
Cloud-hosted CheerpJ Runtime
-
Documentation and tutorials
-
Community support on Gitter
-
Technical support from our support team
-
Available to individual developers and small businesses
Enterprise
-
Command line CheerpJ utilities
-
Cloud or Self-hosted CheerpJ Runtime
-
Documentation and tutorials
-
Community support on Gitter
-
Premium technical support from our support team
-
Access to our development team for compilation log reviews, video calls, consulting
-
Available to organisations of any size
We are experts at converting and migrating legacy Java
Examples of CheerpJ in action

Browser based Java playground
Code editor and runtime all in one. Feel free to compile some Java.

CheerpJ Applet Runner
Our own free solution to help anyone run legacy Java Applets on Chrome without having to install Java.

Demos page
CheerpJ's demo collection, complete with source code to reproduce and modify the results.
Developers area
The basics
Compiling your first Java into JavaScript
Documentation
CheerpJ Documentation
Advanced topics
Expert CheerpJ topics