11 Frontend frameworks that are written with backend languages.

Liron Navon
Jun 1 · 4 min read

In this post I will discuss 11 different frameworks in 11 different languages that allow us to write frontend code — some of them compile down to WASM and some of them simply create web components, the list is not ordered by any reasoning.

Please don’t take it as me recommending one over another, I tried only a subset of those frameworks and never in production.

Blazor (C#)

Blazor is based on the .net framework and uses C# as it’s language of choice, it compiles down to WASM, the great promise as with most of these frameworks is the ability to share code between the frontend and the backend.

Bolero (F#)

Bolero is the little brother of Blazor, it’s based on it but uses F# — a Microsoft functional language — instead of C# and has the same promises that Blazor have with all the greatness of a functional language.

Flutter (Dart)

We can’t talk about web apps in backend languages without talking about one of the biggest announcements from this year’s Google/IO, flutter is hot right now with mobile developers, and it’s finally coming for the web!

Vugu (Go)

Vugu is a Go framework that is largely based on the syntax of Vue, and is being compiled to WASM, it’s completely open source and really easy to get started with.

Elixirscript + Elixirscript React (Elixir)

Elixirscript is based on Elixir, a purely functional language, Elixirscript will convert your code into javascript, it’s similar to Elm, but Elixir is more versatile, used mostly for the backend and have a growing open source community.

Vaadin (Java/Kotlin/Scala)

Vaadin is unique, it tries to bridge between multiple JVM languages, and Web components, the code will come out is Polymer components.

Yew (Rust)

Yew is written in Rust and features a syntax very similar to React, it compiles down to WASM and is really gaining in popularity lately.

PyPyJs (Python)

PyPy is an alternative implementation for python, which allows us to run python in the browser through WASM.

Kotlin wrappers (Kotlin)

I remember when Kotlin v1 just came out, as a young android developer it was a wonderful replacement for the cumbersome Java (6), and it came out with the announcement that it can be compiled down to javascript for web development, and so Kotlin started working on wrappers for different libraries, including React and Redux.

QT (C++)

As you probably figured out by now, WASM has opened a door for a lot of desktop framework to work on the web, and QT is one of the biggest desktop frameworks out there, meaning that in the future we might see ports of Autodesk and Adobe software running in the browser, mostly as a big canvas through WebGL API.

Clojurescript (clojure)

Clojure script is with us a while now, it uses Google’s Clojure compiler to produce efficient and optimized javascript code.

Coming soon — Swift WASM (Swift)

This is not a part of the list since it’s not exactly out there yet, but swift is currently implementing a port for WASM, and that will open a way to develop swift on the browser — but why is swift here? it’s not a backend language! — well, swift started as an IOS/OSX language, but there are a few implementations for the backend too: Vapor/Kitura(IBM)/Perfect.

Wrapping up

There are a lot more frameworks than I can count here, but I tried to cover the most popular ones I know, the frontend scene is becoming more interesting over time and it’s nice to see that it keeps growing and that my skills as a backend developer can be used to write frontend as well.

Lazy Engineering

An engineering blog for lazy people

Liron Navon

Written by

Software Engineer at ClockWork

Lazy Engineering

An engineering blog for lazy people