= Apache Camel extensions for Quarkus

image:https://img.shields.io/maven-central/v/org.apache.camel.quarkus/camel-quarkus-bom.svg["Maven Central", link="http://search.maven.org/#search%7Cga%7C1%7Corg.apache.camel.quarkus"]
image:https://img.shields.io/github/license/openshift/origin.svg?maxAge=2592000["Licensed under Apache License version 2.0", link="https://www.apache.org/licenses/LICENSE-2.0"]
image:https://img.shields.io/badge/zulip-join_chat-brightgreen.svg["Chat on Zulip", link="https://camel.zulipchat.com"]

==== CI Branch Status
[width="50%"]
|===
|main | image:https://github.com/apache/camel-quarkus/workflows/Camel%20Quarkus%20CI/badge.svg?branch=master["Main Branch Build", link="https://github.com/apache/camel-quarkus/actions?query=workflow%3A%22Camel+Quarkus+CI%22"]
|camel-main | image:https://github.com/apache/camel-quarkus/workflows/Camel%20Quarkus%20CI/badge.svg?branch=camel-master["Camel Main Branch Build", link="https://github.com/apache/camel-quarkus/actions?query=workflow%3A%22Camel+Quarkus+CI%22+branch%3Acamel-main"]
|quarkus-main| image:https://github.com/apache/camel-quarkus/workflows/Camel%20Quarkus%20CI/badge.svg?branch=quarkus-master["Quarkus Main Branch Build", link="https://github.com/apache/camel-quarkus/actions?query=workflow%3A%22Camel+Quarkus+CI%22+branch%3Aquarkus-main"]
|===

== What is this

This project hosts the efforts to port and package the 300+ Camel components as Quarkus extensions.

http://camel.apache.org/[Apache Camel] is the Swiss knife of integrating heterogeneous systems with more than a decade
of history and a lively community of users and developers.

https://quarkus.io/[Quarkus] is a Java platform offering fast boot times and low memory footprint. It targets both stock
JVMs (OpenJDK in the first place) and https://www.graalvm.org/[GraalVM].

https://quarkus.io/extensions/[Quarkus extensions] are units of Quarkus distribution. They configure, boot and integrate
a technology (in our case Camel components) into your Quarkus application. You will typically use them as dependencies
in your project.


== How to build

See the contributor guide xref:docs/modules/ROOT/pages/contributor-guide/index.adoc[in the source tree] or on the
https://camel.apache.org/camel-quarkus/latest/contributor-guide/index.html[Apache Camel website].


== Licensing

This software is licensed under the terms you may find in the file named `LICENSE.txt` in this directory.
