- Notifications
You must be signed in to change notification settings - Fork147
Java to Closure JavaScript transpiler
License
google/j2cl
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
J2CL ·
Seamless Java in JavaScript applications that tightly optimizes withClosure Compiler
J2CL is a powerful, simple and lightweight transpiler from Java to Closure styleJavaScript.
Get the best out of Java and JavaScript. You no longer need to choose betweenthe two or lock into a specific framework or a language. Choose the right languageat the right place and hire the best talent for the job.
Get it correct the first time. The robust run-time type checking based onthe strong Java type system combined with the advanced cross language type checkscatches your mistakes early on.
Provides massive code reuse. J2CL closely follows the Java languagesemantics. This reduces surprises, enables reuse acrossdifferent platforms and brings most popular Java libraries into your toolkitincludingGuava,DaggerandAutoValue.
Modern, fresh and blazing fast. Powered byBazel,J2CL provides a fast and modern development experience that will make you smileand keep you productive.
Road tested and trusted. J2CL is the underlying technology of the mostadvanced GSuite apps developed by Google including GMail, Inbox, Docs, Slidesand Calendar.
- Getting Started
- Getting Started for Wasm
- JsInterop Cookbook
- J2CL Best Practices
- Emulation Limitations
- Data Types and Semantics
- Bazel Tutorial
- Bazel Best Practices
- Please subscribe toJ2CL announce for announcements (low traffic).
- Please reportbugsor filefeature requestsviaissue tracker.
- For other questions please use thediscussions.
J2CL is production ready and actively used by many of Google's products, but theprocess of adapting workflows and tooling for the open-source version is not yetfinalized.
Wasm support is fully working but should be considered as work-in-progress sincethe related parts of the spec is not finalized yet. We are working closely withW3C and V8 team to finalize it and make it available in all browsers.
You can see what we are working onhere.
Last, the workflow isnot yet supported in Windows. You can contribute tomake this a reality. Coordinate and follow the progress of this efforthere.For developers that want to use Windows as their platform we recommendinstalling under WSL (Windows Subsystem for Linux).
Stay tuned!
In early 2015, Google GWT team made a difficult but necessary decision to workon a new alternative product to enable Java for the Web.
It was mostly due to changing trends in the web ecosystem and our new internalcustomers who were looking at Java on the Web not as an isolated ecosystem butan integral part of their larger stack. It required a completely new visionto create tools from the ground up, that are tightly integrated with the rest ofthe ecosystem. A modern architecture, that is reliable, fast and provides aquick iteration cycle.
There was no practical way to achieve those goals completely incrementally outof GWT. We started from scratch using everything we learned from working on GWTover the years. In the meantime, we kept GWT steering committee members in theloop and gave contributors very early access so they could decide to build thenext version of GWT on J2CL.
The strategy has now evolved GWT3 to an SDK focused on libraries and enterprisetooling which was one of the strongest points of GWT all along.
We think that such separation of concerns is crucial part of the success of theboth projects and will provide the best results for the open source community.
Read how tocontribute to J2CL.
Please refer tothe license file.
J2CL is not an official Google product and is currently in 'alpha' release for developer preview.
About
Java to Closure JavaScript transpiler