Jooby
lumen
Our great sponsors
Jooby | lumen | |
---|---|---|
13 | 28 | |
1,658 | 3,575 | |
1.0% | 0.9% | |
9.7 | 5.4 | |
1 day ago | 6 months ago | |
Java | Rust | |
Apache License 2.0 | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Jooby
-
Javalin – a simple web framework for Java and Kotlin
One of the good things about it is that using asynchrony is optional. If you don't have to call out anywhere to build the response, processing can all stay in the handler's calling thread. If you do, you can return a future and have the library handle the async for you.
One downside is that it is based on Jetty which isn't considered the most performant backend. A lib with a similar API but based on Netty is Jooby [1] which scores well in the Techempower benchmarks.
[1] - https://jooby.io/
-
Is the Spring framework too heavy and over-designed?
Jooby and Helidon SE are among the best.
-
RIFE2 web framework under development
The code snippet gave me a vibe like it was jooby Looks cool, I suggest maybe start incorporating Project Loom virtual threads in the future.
- Java modern frameworks choice
- Latest version of Microhttp, an event-driven, zero-dependency, pure-Java web server with 500 LOC, capable of 1,000,000+ requests per second on commodity EC2 hardware.
-
The Flask Mega-Tutorial
Speaking of backend development, recently I gave Jooby[1] a try after discovering it was one of the world's top performer in Tech Empower's web framework benchmark[2].
Surprisingly enough, it's terribly easy to put together a REST API with Jooby. I wonder why it's adoption rate is so low.
-
What is the current state of the art for efficiently handling blocking requests in Java/Spring?
Do you need to use Spring btw? If you want to broaden the tool selection I've had great success with i.e Jooby (https://jooby.io/) together with Kotlin coroutines. Another alternative is the KTOR framework.
-
Java Equivalent of Express.js for REST
Jooby I think is the best bet. https://jooby.io/ watch out for jooby dot org I think someone sniped the domain.
-
There is no magic in Spring, I wrote my own (very simplified) framework from scratch to show it
Personally I find it extremely difficult to read and use code that uses ASM directly vs ByteBuddy or some wrapper library. For example take a peak at this: https://github.com/jooby-project/jooby/blob/2.x/modules/jooby-apt/src/main/java/io/jooby/internal/apt/HandlerCompiler.java
-
What would you use to start a new HTTP + SSR project with Java today?
[4] https://jooby.io/
lumen
-
Firefly – A new compiler and runtime for BEAM languages
See the about section: https://github.com/GetFirefly/firefly#about-firefly
> The primary motivator for Firefly's development was the ability to compile Elixir applications that could target WebAssembly, enabling use of Elixir as a language for frontend development. It is also possible to use Firefly to target other platforms as well, by producing self-contained executables on platforms such as x86.
There are details on this also: https://github.com/GetFirefly/firefly#runtime
Generally it should be assumed that actors and their concurrency model is fully supported as that is a part of the core semantics for BEAM languages.
- Elixir – Phoenix LiveView Native
-
Is there a way to create client-side interactivity like Vue or React with only Elixir?
Probably not a practical solution for what you are building now, but it's worth pointing out Lumen, an Erlang VM implementation that compiles to WebAssembly, and could one day enable Elixir on the frontend.
-
You had a head start, Gopher, but you can't outrun this crab.
Another vector could be some tooling that makes it easy to run Go programs compiled to Wasm run inside of Wasmtime environment hosted in Rust. If we run the go tooling in the same system, one could point this tool at a Go repo and be running that Go in a matter of milliseconds. A fun feature would be running channels across separate Wasm envs. Or maybe use Lumen.
-
If you were in charge of a startup tech stack, how would you use elixir to actually scale and make every work seamlessly?
Wish the Elixir WASM project -- Lumen -- were active. It seems like nothing much is happening on it.
-
Lisp in Space
The BEAM (runtime?) is written in C. There is also an effort to rewrite it in Rust (https://github.com/lumen/lumen). Some functions are built into the VM but most of the supporting 'standard library' (OTP / Open Telecom Platform) is written in Erlang. The (main) compiler is written in C. So it's all C or Erlang afaik.
It is ported to every major flavour of OS.
I don't know what 'back end' means in this context.
-
Introspection in Erlang/BEAM-inspired Async-Rust-Executors?
There are attempts to implement an Erlang/BEAM-inspired reactor/runtime/executor/ecosystem for Rust's Async, in particular Bastion. (There are also Lumen, Lunatic and Async-Backplane/Async-Supervisor.)
-
WebAssembly: The New Kubernetes?
If I recall correctly, Saša Jurić mentioned in an interview that he envisions the BEAM being used as an OS in the future, where you can run your database, web server and other services under one VM.
While I don't personally have much use for it (at the moment), I'm curious about how this would look like with Lumen [0] where you can run your whole web stack with a single binary and being internally supervised by the BEAM.
Lumen's development has been slow but I remember seeing a tweet from a team member stating that development is slowly ramping back up (not a criticism in any way, just providing some context).
What are some alternatives?
Spring Boot - Spring Boot
javalin - A simple and modern Java and Kotlin web framework [Moved to: https://github.com/javalin/javalin]
ktor - Framework for quickly creating connected applications in Kotlin with minimal effort
Vert.x - Vert.x is a tool-kit for building reactive applications on the JVM
Spring - Spring Framework
Quarkus - Quarkus: Supersonic Subatomic Java.
wasmex - Execute WebAssembly from Elixir
Micronaut - Micronaut Application Framework
http4k - The Functional toolkit for Kotlin HTTP applications. http4k provides a simple and uniform way to serve, consume, and test HTTP services.
Firefly - Firefly is an asynchronous web framework for rapid development of high-performance web application.
Ninja - Ninja is a full stack web framework for Java. Rock solid, fast and super productive.
Pippo - Micro Java Web Framework