Popularity
9.2
Stable
Activity
10.0
Growing
5,303
269
4,874

Description

Camel lets you create the Enterprise Integration Patterns to implement routing and mediation rules in either a Java based Domain Specific Language (or Fluent API), via Spring or Blueprint based Xml Configuration files, or via the Scala DSL. This means you get smart completion of routing rules in your IDE whether in your Java, Scala or XML editor.

Apache Camel uses URIs so that it can easily work directly with any kind of transport or messaging model such as HTTP, ActiveMQ, JMS, JBI, SCA, MINA or CXF together with working with pluggable Data Format options. Apache Camel is a small library which has minimal dependencies for easy embedding in any Java application. Apache Camel lets you work with the same API regardless which kind of transport used, so learn the API once and you will be able to interact with all the Components that is provided out-of-the-box.

Apache Camel has powerful Bean Binding and integrated seamless with popular frameworks such as Spring, Blueprint and Guice.

Apache Camel has extensive testing support allowing you to easily unit test your routes.

Apache Camel can be used as a routing and mediation engine for the following projects:

Code Quality Rank: L3
Programming language: Java
License: Apache License 2.0
Tags: Messaging    
Latest version: v3.3.0

Apache Camel alternatives and similar libraries

Based on the "Messaging" category.
Alternatively, view Apache Camel alternatives based on common mentions on social networks and blogs.

Do you think we are missing an alternative of Apache Camel or a related project?

Add another 'Messaging' Library

README

Apache Camel

Maven Central Javadocs Stack Overflow Chat Twitter

Apache Camel is an Open Source integration framework that empowers you to quickly and easily integrate various systems consuming or producing data.

Introduction

Camel empowers you to define routing and mediation rules in a variety of domain-specific languages (DSL, such as Java, XML, Groovy, Kotlin, and YAML). This means you get smart completion of routing rules in your IDE, whether in a Java or XML editor.

Apache Camel uses URIs to enable easier integration with all kinds of transport or messaging model including HTTP, ActiveMQ, JMS, JBI, SCA, MINA or CXF together with working with pluggable Data Format options. Apache Camel is a small library that has minimal dependencies for easy embedding in any Java application. Apache Camel lets you work with the same API regardless of the transport type, making it possible to interact with all the components provided out-of-the-box, with a good understanding of the API.

Apache Camel has powerful Bean Binding and integrated seamlessly with popular frameworks such as Spring, Quarkus, and CDI.

Apache Camel has extensive testing support allowing you to easily unit test your routes.

Components

Apache Camel comes alongside several artifacts with components, data formats, languages, and kinds. The up to date list is available online at the Camel website:

Examples

Apache Camel comes with many examples. The up to date list is available online at GitHub:

Getting Started

To help you get started, try the following links:

Getting Started

https://camel.apache.org/getting-started.html

The beginner examples are another powerful alternative pathway for getting started with Apache Camel.

Building

https://camel.apache.org/building.html

Contributions

We welcome all kinds of contributions, the details of which are specified here:

https://github.com/apache/camel/blob/main/CONTRIBUTING.md

Please refer to the website for details of finding the issue tracker, email lists, GitHub, chat

Website: https://camel.apache.org/

Github (source): https://github.com/apache/camel

Issue tracker: https://issues.apache.org/jira/projects/CAMEL

Mailing-list: https://camel.apache.org/community/mailing-list/

Chat: https://camel.zulipchat.com/

StackOverflow: https://stackoverflow.com/questions/tagged/apache-camel

Twitter: https://twitter.com/ApacheCamel

Support

For additional help, support, we recommend referencing this page first:

https://camel.apache.org/community/support/

Getting Help

If you get stuck somewhere, please feel free to reach out to us on either StackOverflow, Chat, or the email mailing list.

Please help us make Apache Camel better - we appreciate any feedback you may have.

Enjoy!


The Camel riders!

Licensing

The terms for software licensing are detailed in the LICENSE.txt file,
located in the working directory.


*Note that all licence references and agreements mentioned in the Apache Camel README section above are relevant to that project's source code only.