{"id":13617300,"url":"https://github.com/apache/eventmesh","last_synced_at":"2025-05-13T20:08:01.986Z","repository":{"id":36951850,"uuid":"208698479","full_name":"apache/eventmesh","owner":"apache","description":"EventMesh is a new generation serverless event middleware for building distributed event-driven applications.","archived":false,"fork":false,"pushed_at":"2025-04-30T08:39:16.000Z","size":68014,"stargazers_count":1644,"open_issues_count":226,"forks_count":637,"subscribers_count":64,"default_branch":"master","last_synced_at":"2025-05-06T06:03:00.592Z","etag":null,"topics":["cloud-native","cqrs","esb","event-connector","event-driven","event-gateway","event-governance","event-mesh","event-sourcing","event-streaming","hacktoberfest","message-bus","microservice","multi-runtime","pubsub","serverless","serverless-workflow"],"latest_commit_sha":null,"homepage":"https://eventmesh.apache.org/","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/apache.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2019-09-16T03:04:56.000Z","updated_at":"2025-05-06T01:52:14.000Z","dependencies_parsed_at":"2025-04-17T15:51:04.447Z","dependency_job_id":null,"html_url":"https://github.com/apache/eventmesh","commit_stats":{"total_commits":3266,"total_committers":414,"mean_commits":7.888888888888889,"dds":0.91579914268218,"last_synced_commit":"a66864a76e9eff3286e30d97846cd22e03f93d3b"},"previous_names":["apache/incubator-eventmesh"],"tags_count":27,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apache%2Feventmesh","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apache%2Feventmesh/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apache%2Feventmesh/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apache%2Feventmesh/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/apache","download_url":"https://codeload.github.com/apache/eventmesh/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253336892,"owners_count":21892796,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cloud-native","cqrs","esb","event-connector","event-driven","event-gateway","event-governance","event-mesh","event-sourcing","event-streaming","hacktoberfest","message-bus","microservice","multi-runtime","pubsub","serverless","serverless-workflow"],"created_at":"2024-08-01T20:01:39.696Z","updated_at":"2025-05-13T20:08:01.980Z","avatar_url":"https://github.com/apache.png","language":"Java","readme":"\u003cdiv align=\"center\"\u003e\n\n\u003cbr /\u003e\u003cbr /\u003e\n\u003cimg src=\"resources/logo.png\" width=\"256\"\u003e\n\u003cbr /\u003e\n\n[![CI status](https://img.shields.io/github/actions/workflow/status/apache/eventmesh/ci.yml?logo=github\u0026style=for-the-badge)](https://github.com/apache/eventmesh/actions/workflows/ci.yml)\n[![CodeCov](https://img.shields.io/codecov/c/gh/apache/eventmesh/master?logo=codecov\u0026style=for-the-badge)](https://codecov.io/gh/apache/eventmesh)\n[![Code Quality: Java](https://img.shields.io/lgtm/grade/java/g/apache/eventmesh.svg?logo=lgtm\u0026logoWidth=18\u0026style=for-the-badge)](https://lgtm.com/projects/g/apache/eventmesh/context:java)\n[![Total Alerts](https://img.shields.io/lgtm/alerts/g/apache/eventmesh.svg?logo=lgtm\u0026logoWidth=18\u0026style=for-the-badge)](https://lgtm.com/projects/g/apache/eventmesh/alerts/)\n\n[![License](https://img.shields.io/github/license/apache/eventmesh?style=for-the-badge)](https://www.apache.org/licenses/LICENSE-2.0.html)\n[![GitHub Release](https://img.shields.io/github/v/release/apache/eventmesh?style=for-the-badge)](https://github.com/apache/eventmesh/releases)\n[![Slack Status](https://img.shields.io/badge/slack-join_chat-blue.svg?logo=slack\u0026style=for-the-badge)](https://join.slack.com/t/the-asf/shared_invite/zt-1y375qcox-UW1898e4kZE_pqrNsrBM2g)\n  \n\n[📦 Documentation](https://eventmesh.apache.org/docs/introduction) |\n[📔 Examples](https://github.com/apache/eventmesh/tree/master/eventmesh-examples) |\n[⚙️ Roadmap](https://eventmesh.apache.org/docs/roadmap) |\n[🌐 简体中文](README.zh-CN.md)\n\u003c/div\u003e\n\n\n# Apache EventMesh\n\n**Apache EventMesh** is a new generation serverless event middleware for building distributed [event-driven](https://en.wikipedia.org/wiki/Event-driven_architecture) applications.\n\n### EventMesh Architecture\n\n![EventMesh Architecture](resources/eventmesh-architecture-5.png)\n\n### EventMesh K8S deployment\n\n![EventMesh Operator](resources/eventmesh-operator.png)\n\n## Features\n\nApache EventMesh has a vast amount of features to help users achieve their goals. Let us share with you some of the key features EventMesh has to offer:\n\n- Built around the [CloudEvents](https://cloudevents.io) specification.\n- Rapidty extendsible interconnector layer [connectors](https://github.com/apache/eventmesh/tree/master/eventmesh-connectors) using [openConnect](https://github.com/apache/eventmesh/tree/master/eventmesh-openconnect) such as the source or sink of Saas, CloudService, and Database etc.\n- Rapidty extendsible storage layer such as [Apache RocketMQ](https://rocketmq.apache.org), [Apache Kafka](https://kafka.apache.org), [Apache Pulsar](https://pulsar.apache.org), [RabbitMQ](https://rabbitmq.com), [Redis](https://redis.io).\n- Rapidty extendsible meta such as [Consul](https://consulproject.org/en/), [Nacos](https://nacos.io), [ETCD](https://etcd.io) and [Zookeeper](https://zookeeper.apache.org/).\n- Guaranteed at-least-once delivery.\n- Deliver events between multiple EventMesh deployments.\n- Event schema management by catalog service.\n- Powerful event orchestration by [Serverless workflow](https://serverlessworkflow.io/) engine.\n- Powerful event filtering and transformation.\n- Rapid, seamless scalability.\n- Easy Function develop and framework integration.\n\n## Roadmap\n\nPlease go to the [roadmap](https://eventmesh.apache.org/docs/roadmap) to get the release history and new features of Apache EventMesh.\n\n## Subprojects\n\n- [EventMesh-site](https://github.com/apache/eventmesh-site): Apache official website resources for EventMesh.\n- [EventMesh-workflow](https://github.com/apache/eventmesh-workflow): Serverless workflow runtime for event Orchestration on EventMesh.\n- [EventMesh-dashboard](https://github.com/apache/eventmesh-dashboard): Operation and maintenance console of EventMesh.\n- [EventMesh-catalog](https://github.com/apache/eventmesh-catalog): Catalog service for event schema management using AsyncAPI.\n- [EventMesh-go](https://github.com/apache/eventmesh-go): A go implementation for EventMesh runtime.\n\n## Quick start\n\nThis section of the guide will show you the steps to deploy EventMesh from [Local](#run-eventmesh-runtime-locally), [Docker](#run-eventmesh-runtime-in-docker), [K8s](#run-eventmesh-runtime-in-kubernetes).  \n\nThis section guides the launch of EventMesh according to the default configuration, if you need more detailed EventMesh deployment steps, please visit the [EventMesh official document](https://eventmesh.apache.org/docs/introduction).\n\n#### 1. Pull EventMesh Image\n\nUse the following command line to download the latest version of [EventMesh](https://hub.docker.com/r/apache/eventmesh):\n\n```shell\nsudo docker pull apache/eventmesh:latest\n```\n\n#### 2. Run EventMesh Runtime\n\nUse the following command to start the EventMesh container:\n\n```shell\nsudo docker run -d --name eventmesh -p 10000:10000 -p 10105:10105 -p 10205:10205 -p 10106:10106 -t apache/eventmesh:latest\n```\n#### 3. Creating Topics\nCreating a topic is the first step in using EventMesh. You need to send an HTTP POST request to create a topic.\nExample Request\n```shell\nPOST /eventmesh/topic/create HTTP/1.1  \nHost: localhost:10105  \nContent-Type: application/json  \n  \n{  \n  \"topic\": \"example-topic\"  \n}\n```\n#### 4. Subscribing to Topics\nAfter creating a topic, you can subscribe to it to receive messages. EventMesh provides two subscription methods: local subscription and remote subscription.\n\n```shell\nPOST /eventmesh/subscribe/local HTTP/1.1  \nHost: localhost:10105  \nContent-Type: application/json  \n{  \n  \"url\": \"http://localhost:8080/callback\",  \n  \"consumerGroup\": \"example-consumer-group\",  \n  \"topic\": [  \n    {  \n      \"topic\": \"example-topic\",  \n      \"mode\": \"CLUSTERING\",  \n      \"type\": \"SYNC\"  \n    }  \n  ]  \n}\n```\n#### 5. Sending Messages\nEventMesh provides multiple message sending methods, including asynchronous sending, synchronous sending, and batch sending.\n```shell\nPOST /eventmesh/publish HTTP/1.1  \nHost: localhost:10105  \nContent-Type: application/json    \neventmesh-message-topic: example-topic \n{  \n  \"content\": \"Hello, EventMesh!\"  \n}\n```\n#### 6. Unsubscribing\nWhen you no longer need to receive messages for a topic, you can unsubscribe.\n```shell\nPOST /eventmesh/unsubscribe/local HTTP/1.1  \nHost: localhost:10105  \nContent-Type: application/json  \n{  \n  \"url\": \"http://localhost:8080/callback\",  \n  \"consumerGroup\": \"example-consumer-group\",  \n  \"topics\": [\"example-topic\"]  \n}\n```\n## Contributing\n\n[![GitHub repo Good Issues for newbies](https://img.shields.io/github/issues/apache/eventmesh/good%20first%20issue?style=flat\u0026logo=github\u0026logoColor=green\u0026label=Good%20First%20issues)](https://github.com/apache/eventmesh/issues?q=is%3Aopen+is%3Aissue+label%3A%22good+first+issue%22) [![GitHub Help Wanted issues](https://img.shields.io/github/issues/apache/eventmesh/help%20wanted?style=flat\u0026logo=github\u0026logoColor=b545d1\u0026label=%22Help%20Wanted%22%20issues)](https://github.com/apache/eventmesh/issues?q=is%3Aopen+is%3Aissue+label%3A%22help+wanted%22) [![GitHub Help Wanted PRs](https://img.shields.io/github/issues-pr/apache/eventmesh/help%20wanted?style=flat\u0026logo=github\u0026logoColor=b545d1\u0026label=%22Help%20Wanted%22%20PRs)](https://github.com/apache/eventmesh/pulls?q=is%3Aopen+is%3Aissue+label%3A%22help+wanted%22) [![GitHub repo Issues](https://img.shields.io/github/issues/apache/eventmesh?style=flat\u0026logo=github\u0026logoColor=red\u0026label=Issues)](https://github.com/apache/eventmesh/issues?q=is%3Aopen)\n\nEach contributor has played an important role in promoting the robust development of Apache EventMesh. We sincerely appreciate all contributors who have contributed code and documents.\n\n- [Contributing Guideline](https://eventmesh.apache.org/community/contribute/contribute)\n- [Good First Issues](https://github.com/apache/eventmesh/issues?q=is%3Aopen+is%3Aissue+label%3A%22good+first+issue%22)\n\n\n## CNCF Landscape\n\n\u003cdiv align=\"center\"\u003e\n\n\u003cimg src=\"https://landscape.cncf.io/images/cncf-landscape-horizontal-color.svg\" width=\"200\"/\u003e\n\nApache EventMesh enriches the \u003ca href=\"https://landscape.cncf.io/embed/embed.html?base-path=\u0026key=serverless--framework\u0026headers=true\u0026category-header=true\u0026category-in-subcategory=false\u0026title-uppercase=false\u0026title-alignment=left\u0026title-font-family=sans-serif\u0026title-font-size=13\u0026style=shadowed\u0026bg-color=%233e79b0\u0026fg-color=%23ffffff\u0026item-modal=false\u0026item-name=false\u0026size=md\u0026items-alignment=left\" style=\"width:100%;height:100%;display:block;border:none;\"\u003eCNCF Cloud Native Landscape.\u003c/a\u003e\n\n\u003c/div\u003e\n\n## License\n\nApache EventMesh is licensed under the [Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.html).\n\n## Community\n\n| WeChat Assistant                                        | WeChat Public Account                                  | Slack                                                                                                                                               |\n|---------------------------------------------------------|--------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------|\n| \u003cimg src=\"resources/wechat-assistant.jpg\" width=\"128\"/\u003e | \u003cimg src=\"resources/wechat-official.jpg\" width=\"128\"/\u003e | [Join Slack Chat](https://join.slack.com/t/the-asf/shared_invite/zt-1y375qcox-UW1898e4kZE_pqrNsrBM2g)(Please open an issue if this link is expired) |\n\nBi-weekly meeting : [#Tencent meeting](https://meeting.tencent.com/dm/wes6Erb9ioVV) : 346-6926-0133\n\nBi-weekly meeting record : [bilibili](https://space.bilibili.com/1057662180)\n\n### Mailing List\n\n| Name        | Description                                             | Subscribe                                                  | Unsubscribe                                                    | Archive                                                                          |\n|-------------|---------------------------------------------------------|------------------------------------------------------------|----------------------------------------------------------------|----------------------------------------------------------------------------------|\n| Users       | User discussion                                         | [Subscribe](mailto:users-subscribe@eventmesh.apache.org)   | [Unsubscribe](mailto:users-unsubscribe@eventmesh.apache.org)   | [Mail Archives](https://lists.apache.org/list.html?users@eventmesh.apache.org)   |\n| Development | Development discussion (Design Documents, Issues, etc.) | [Subscribe](mailto:dev-subscribe@eventmesh.apache.org)     | [Unsubscribe](mailto:dev-unsubscribe@eventmesh.apache.org)     | [Mail Archives](https://lists.apache.org/list.html?dev@eventmesh.apache.org)     |\n| Commits     | Commits to related repositories                         | [Subscribe](mailto:commits-subscribe@eventmesh.apache.org) | [Unsubscribe](mailto:commits-unsubscribe@eventmesh.apache.org) | [Mail Archives](https://lists.apache.org/list.html?commits@eventmesh.apache.org) |\n| Issues      | Issues or PRs comments and reviews                      | [Subscribe](mailto:issues-subscribe@eventmesh.apache.org)  | [Unsubscribe](mailto:issues-unsubscribe@eventmesh.apache.org)  | [Mail Archives](https://lists.apache.org/list.html?issues@eventmesh.apache.org)  |\n","funding_links":[],"categories":["Java","Serverless"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fapache%2Feventmesh","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fapache%2Feventmesh","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fapache%2Feventmesh/lists"}