Cameleer documentation
Cameleer is Apache Camel rewritten in Rust; these pages explain how to write, run and deploy its routes, and document every component, language and data format with tested examples.
If you already know Apache Camel, the routes, endpoint URIs, EIP names and the YAML DSL are the same. Start with a guide, then look up the components your route uses.
Where to find what
| you want to | go to |
|---|---|
| write and run your first route | Guides |
| send or receive messages with Kafka, HTTP, S3, Slack, SQL, ... | Components, one page per endpoint scheme, grouped by category |
write expressions and predicates (${header.x}, JSONPath, XPath) | Languages |
| convert message bodies (JSON, CSV, XML, Avro, ...) | Data formats |
| run Cameleer in Docker, Kubernetes, Cloud Run or AWS Lambda | Deployment |
| build a smaller binary or image with only the components you use | Build features |
| check which Camel features are implemented, with their options | Feature matrix |
| see what people run on it: AI agent tools, HL7 over MLLP, MQTT edge gateways, serverless, file and SFTP pipelines | Use cases, the agent cookbook and the edge cookbook |
| compare Cameleer with Apache Camel: throughput, memory, startup | Apache Camel vs Cameleer and the benchmark report |
| choose between Apache Camel alternatives | Apache Camel alternatives |
| see what was verified against real servers and clients | Interop |
| see what is planned | Roadmap |
The project overview, the quick start and the examples are in the README; the ready-to-run route files are in examples/.
Connect your coding agent
Give Cursor, Claude, Windsurf, VS Code or any MCP-capable assistant Cameleer's real docs, so it
writes routes from the documentation instead of guessing. The docs MCP server is
https://gitmcp.io/pmsudhi/cameleer (it serves this repository's llms.txt, docs and README).
| tool | add this |
|---|---|
| Claude Code | claude mcp add --transport http cameleer-docs https://gitmcp.io/pmsudhi/cameleer |
Cursor (~/.cursor/mcp.json) | {"mcpServers": {"cameleer-docs": {"url": "https://gitmcp.io/pmsudhi/cameleer"}}} |
Windsurf (~/.codeium/windsurf/mcp_config.json) | {"mcpServers": {"cameleer-docs": {"serverUrl": "https://gitmcp.io/pmsudhi/cameleer"}}} |
VS Code (.vscode/mcp.json) | {"servers": {"cameleer-docs": {"type": "http", "url": "https://gitmcp.io/pmsudhi/cameleer"}}} |
Claude Desktop (claude_desktop_config.json) | {"mcpServers": {"cameleer-docs": {"command": "npx", "args": ["mcp-remote", "https://gitmcp.io/pmsudhi/cameleer"]}}} |
The docs are also indexed by Context7 (ask your assistant to "use context7" for Cameleer) and DeepWiki. Agents that read files directly can start from llms.txt or llms-full.txt.
How the pages are organized
Every page starts with a one-sentence answer under its title, then shows a complete route you can copy. Component pages follow the same layout: when to use it, the URI format, an example in YAML and in the Rust DSL, the options, the message headers, how to run it with Docker, and common questions.
Every YAML example is a complete Camel YAML DSL file. Save it as route.camel.yaml and run it
with the Docker image:
docker run --rm -v "$PWD:/routes:ro" pmsudhi/cameleer run /routes/route.camel.yamlHosts and credentials in examples are written as {{env:NAME:default}} placeholders: set the
environment variable (-e NAME=value with Docker) or the default is used.
Common questions
Are the examples tested?
Yes. The test suite parses every YAML example with the real loader and resolves every endpoint URI, which rejects unknown options the same way Apache Camel does. Many examples also run end to end against embedded brokers and mock services.
Is there a version of these docs for LLMs and coding assistants?
Yes. The site publishes llms.txt (a summary with links) and llms-full.txt (every page as plain
markdown), and every HTML page has its markdown source next to it under the same name with .md.
Where do I report a mistake in the docs?
Open an issue or a pull request on GitHub. Each page links to its source file at the bottom.
Writing documentation
- One page per component at
components/<scheme>.md; alias schemes (httpsforhttp) go on the page's**Also:**line instead of getting their own page. Languages go inlanguages/<name>.md, data formats indataformats/<name>.md, guides inguides/. - The first line under the H1 is a blockquote with one plain sentence that answers what the page is about; it becomes the page's search description.
- Every
```yamlblock is either a complete Camel route preceded by<!-- example: <unique-id> -->on the line directly above, or something else (a Compose or Kubernetes file) preceded by<!-- not-camel -->. - A "Common questions" section with
###question headings becomes FAQ data for search engines. - Links between pages are relative markdown links (
../components/kafka.md).
Check your changes, then build the site:
cargo test -p cameleer-main --test docs_harness
python3 scripts/build-docs.py # writes site/docs/, site/sitemap.xml, site/llms*.txt
python3 -m http.server -d site 8000 # then open http://localhost:8000/docs/Found a problem?
If something on this page doesn't match what Cameleer does, or you hit a bug while building
with it, please help fix it, whether you are a person or a coding agent:
open an issue that describes what you saw,
then fork the repository, fix it, add or update a test, run cargo test --workspace, and open
a pull request. CONTRIBUTING.md
explains the ground rules.