All Projects → google → J2cl

google / J2cl

Licence: apache-2.0
Java to Closure JavaScript transpiler

Programming Languages

javascript
184084 projects - #8 most used programming language
java
68154 projects - #9 most used programming language

Projects that are alternatives of or similar to J2cl

Evm2wasm
[ORPHANED] Transcompiles EVM code to eWASM
Stars: ✭ 96 (-87.58%)
Mutual labels:  compiler, transpiler
Transcrypt
Python 3.7 to JavaScript compiler - Lean, fast, open! -
Stars: ✭ 2,502 (+223.67%)
Mutual labels:  compiler, transpiler
Godzilla
Godzilla is a ES2015 to Go source code transpiler and runtime
Stars: ✭ 1,464 (+89.39%)
Mutual labels:  compiler, transpiler
Elchemy
Write Elixir code using statically-typed Elm-like syntax (compatible with Elm tooling)
Stars: ✭ 1,080 (+39.72%)
Mutual labels:  compiler, transpiler
Wax
A tiny programming language that transpiles to C, C++, Java, TypeScript, Python, C#, Swift, Lua and WebAssembly 🚀
Stars: ✭ 373 (-51.75%)
Mutual labels:  compiler, transpiler
Fetlang
Fetish-themed programming language
Stars: ✭ 1,337 (+72.96%)
Mutual labels:  compiler, transpiler
Crossshader
⚔️ A tool for cross compiling shaders. Convert between GLSL, HLSL, Metal Shader Language, or older versions of GLSL.
Stars: ✭ 113 (-85.38%)
Mutual labels:  compiler, transpiler
Jsweet
A Java to JavaScript transpiler.
Stars: ✭ 1,167 (+50.97%)
Mutual labels:  compiler, transpiler
Ratel Core
High performance JavaScript to JavaScript compiler with a Rust core
Stars: ✭ 367 (-52.52%)
Mutual labels:  compiler, transpiler
webfx
A JavaFX application transpiler. Write your Web Application in JavaFX and WebFX will transpile it in pure JS.
Stars: ✭ 210 (-72.83%)
Mutual labels:  transpiler, gwt
Typescripttolua
Typescript to lua transpiler. https://typescripttolua.github.io/
Stars: ✭ 783 (+1.29%)
Mutual labels:  compiler, transpiler
Haxe
Haxe - The Cross-Platform Toolkit
Stars: ✭ 4,665 (+503.49%)
Mutual labels:  compiler, transpiler
Elixirscript
Converts Elixir to JavaScript
Stars: ✭ 1,504 (+94.57%)
Mutual labels:  compiler, transpiler
Retyped
Access 3600+ libraries from C# and let Bridge.NET compile your project into JavaScript.
Stars: ✭ 216 (-72.06%)
Mutual labels:  compiler, transpiler
Bytecoder
Rich Domain Model for JVM Bytecode and Framework to interpret and transpile it.
Stars: ✭ 401 (-48.12%)
Mutual labels:  compiler, transpiler
Nimporter
Compile Nim Extensions for Python On Import!
Stars: ✭ 474 (-38.68%)
Mutual labels:  compiler, transpiler
Esper
Esper Complex Event Processing, Streaming SQL and Event Series Analysis
Stars: ✭ 680 (-12.03%)
Mutual labels:  compiler
Open C Book
开源书籍:《C语言编程透视》,配套视频课程《360° 剖析 Linux ELF》已上线,视频讲解更为系统和深入,欢迎订阅:https://www.cctalk.com/m/group/88089283
Stars: ✭ 715 (-7.5%)
Mutual labels:  compiler
Tiny Compiler
A tiny evaluator and compiler of arithmetic expressions.
Stars: ✭ 680 (-12.03%)
Mutual labels:  compiler
Wirefilter
An execution engine for Wireshark-like filters
Stars: ✭ 677 (-12.42%)
Mutual labels:  compiler

J2CL · Build Status

Seamless Java in JavaScript applications that tightly optimizes with Closure Compiler


J2CL is a powerful, simple and lightweight transpiler from Java to Closure style JavaScript.

  • Get the best out of Java and JavaScript. You no longer need to choose between the two or lock into a specific framework or a language. Choose the right language at the right place and hire the best talent for the job.

  • Get it correct the first time. The robust run-time type checking based on the strong Java type system combined with the advanced cross language type checks catches your mistakes early on.

  • Provides massive code reuse. J2CL closely follows the Java language semantics. This reduces surprises, enables reuse across different platforms and brings most popular Java libraries into your toolkit including Guava, Dagger and AutoValue.

  • Modern, fresh and blazing fast. Powered by Bazel, J2CL provides a fast and modern development experience that will make you smile and keep you productive.

  • Road tested and trusted. J2CL is the underlying technology of the most advanced GSuite apps developed by Google including GMail, Inbox, Docs, Slides and Calendar.

Guides

Get Support

Caveat Emptor

J2CL is production ready and actively used by many of Google's products, but the process of adapting workflows and tooling for the open-source version is not yet finalized.

You can see what we are working on here.

Last, the workflow is not yet supported in Windows. You can contribute to make this a reality. Coordinate and follow the progress of this effort here. For developers that want to use Windows as their platform we recommend installing under WSL (Windows Subsystem for Linux).

Stay tuned!

J2CL vs. GWT?

In early 2015, Google GWT team made a difficult but necessary decision to work on a new alternative product to enable Java for the Web.

It was mostly due to changing trends in the web ecosystem and our new internal customers who were looking at Java on the Web not as an isolated ecosystem but an integral part of their larger stack. It required a completely new vision to create tools from the ground up, that are tightly integrated with the rest of the ecosystem. A modern architecture, that is reliable, fast and provides a quick iteration cycle.

There was no practical way to achieve those goals completely incrementally out of GWT. We started from scratch using everything we learned from working on GWT over the years. In the meantime, we kept GWT steering committee members in the loop and gave contributors very early access so they could decide to build the next version of GWT on J2CL.

The strategy has now evolved GWT3 to an SDK focused on libraries and enterprise tooling 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 the both projects and will provide the best results for the open source community.

Contributing

Read how to contribute to J2CL.

Licensing

Please refer to the license file.

Disclaimers

J2CL is not an official Google product and is currently in 'alpha' release for developer preview.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].