Introducing Helidon

Helidon is a framework for developing Java applications using a microservices architecture. It simplifies and streamlines the development, deployment, and management of cloud-native applications.

At its core, Helidon provides a set of Java APIs that allow you to develop new Java applications (or migrate existing applications) that can run in more places, scale easily, and adjust swiftly as requirements change, leading to more efficient and effective applications.

Helidon applications are standalone Java applications running in their own JVM and powered by the Helidon WebServer. Helidon is compatible with Java SE and many Jakarta EE specifications. It includes a full observability stack with dedicated components for health checks, metrics, tracing, and logging. It also integrates well with several other popular tools and technologies so you can feel confident that you won’t lose any functionality moving to the Helidon framework.

Helidon is available in two flavors, Helidon SE and Helidon MP. Both flavors deliver great results for generating cloud-native Java applications built on microservices, but they offer distinct developer experiences.

Helidon SE is Helidon’s foundational set of APIs; it offers a lightweight and flexible approach to developing Java applications within a framework. Generally, you should use Helidon SE if you want the greatest possible control over the development and functionality of your application, while still benefiting from the Helidon framework.

Helidon MP builds on the APIs in Helidon SE by adding support for Eclipse MicroProfile, a project whose goal is to standardize Enterprise Java APIs for microservices development.

Which flavor should you use?
Use Helidon SE ifUse Helidon MP if
  • You want full transparency into and greater control over your development process.

  • You plan to rely heavily on concurrency APIs and you want support for virtual threads.

  • You do not plant to use CDI-based components.

  • You want to limit the number of third-party dependencies.

  • You prefer a microframework with a tiny footprint (~7 MB).

Learn more at Helidon SE

  • You want to take advantage of the APIs provided by the MicroProfile specification.

  • You are already familiar with Jakarta EE, MicroProfile, or Spring Boot and want a similar development experience.

  • You are migrating existing Jakarta EE applications to microservices architecture.

  • You plan to use CDI components or extensions, Jakarta Persistence (JPA) for data access, or Jersey (Jakarta RESTful Web Services, JAX-RS) for RESTful services.

Learn more at Helidon MP

Compare the following code examples to see the differences in how you would implement a simple RESTful service using either Helidon SE or Helidon MP.

Helidon SE sample
WebServer.builder()
        .addRouting(HttpRouting.builder()
                            .get("/greet", (req, res)
                                    -> res.send("Hello World!")))
        .build()
        .start();
Copied
Helidon MP sample
@Path("hello")
public class HelloWorld {
    @GET
    public String hello() {
        return "Hello World";
    }
}
Copied

Next Steps

Helidon is an open source framework (developed by Oracle) licensed under Apache License 2.0. You can follow its development at the Helidon GitHub repository.