Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/allegro/hermes
Fast and reliable message broker built on top of Kafka.
https://github.com/allegro/hermes
hacktoberfest hermes kafka messaging pubsub
Last synced: 6 days ago
JSON representation
Fast and reliable message broker built on top of Kafka.
- Host: GitHub
- URL: https://github.com/allegro/hermes
- Owner: allegro
- License: other
- Created: 2015-05-15T08:11:16.000Z (over 9 years ago)
- Default Branch: master
- Last Pushed: 2024-12-12T17:08:49.000Z (12 days ago)
- Last Synced: 2024-12-13T01:42:17.846Z (12 days ago)
- Topics: hacktoberfest, hermes, kafka, messaging, pubsub
- Language: Java
- Homepage: http://hermes.allegro.tech
- Size: 62.9 MB
- Stars: 820
- Watchers: 33
- Forks: 218
- Open Issues: 43
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Codeowners: .github/CODEOWNERS
Awesome Lists containing this project
- awesome-kafka - hermes - Fast and reliable message broker built on top of Kafka. (Libraries / Kafka)
- awesome-kafka - hermes
README
Hermes
======[![Build Status](https://github.com/allegro/hermes/actions/workflows/ci.yml/badge.svg?branch=master)](https://github.com/allegro/hermes/actions/workflows/ci.yml?query=branch%3Amaster)
[![Documentation Status](https://readthedocs.org/projects/hermes-pubsub/badge/?version=latest)](https://readthedocs.org/projects/hermes-pubsub/?badge=latest)
[![Maven Central](https://maven-badges.herokuapp.com/maven-central/pl.allegro.tech.hermes/hermes-client/badge.svg)](https://maven-badges.herokuapp.com/maven-central/pl.allegro.tech.hermes/hermes-client)Hermes is an asynchronous message broker built on top of [Kafka](http://kafka.apache.org/).
We provide reliable, fault tolerant REST interface for message publishing and adaptive push
mechanisms for message sending.See our 10-minute getting started guide with Docker: [Getting started](http://hermes-pubsub.readthedocs.org/en/latest/quickstart/)
Visit our page: [hermes.allegro.tech](http://hermes.allegro.tech)
See our full documentation: [http://hermes-pubsub.readthedocs.org/en/latest/](http://hermes-pubsub.readthedocs.org/en/latest/)
If you have any question or idea regarding the project, please feel free to reach us out using [GitHub discussions](https://github.com/allegro/hermes/discussions).
## License
**hermes** is published under [Apache License 2.0](http://www.apache.org/licenses/LICENSE-2.0).
## Development
### Code formatting
For code formatting we use [google-java-format](https://github.com/google/google-java-format/tree/master).
Following steps are required for optimal dev experience in IJ:1. Download [google-java-format plugin](https://plugins.jetbrains.com/plugin/8527-google-java-format)
2. [Set custom VM options required for IJ plugin](https://github.com/google/google-java-format/tree/master?tab=readme-ov-file#intellij-jre-config)
3. Go to `Settings > google-java-format` and click `Enable google java-format` (should be checked by default)
4. Go to `Settings > Tools > Actions on Save` and enable `Reformat code` and `Optimize imports` for Java filesEach save should automatically trigger reformat.
If you want to debug the CLI check on macOS:
```shell
wget https://github.com/google/google-java-format/releases/download/v1.23.0/google-java-format_darwin-arm64
chmod a+x google-java-format_darwin-arm64
chmod a+x .github/scripts/check-google-java-format.sh
./.github/scripts/check-google-java-format.sh
```or if you are on Linux:
```shell
wget https://github.com/google/google-java-format/releases/download/v1.23.0/google-java-format_linux-x86-64
chmod a+x google-java-format_linux-x86-64
chmod a+x .github/scripts/check-google-java-format.sh
./.github/scripts/check-google-java-format.sh
```You can also run the following command to fix formatting for the whole project:
```shell
./.github/scripts/check-google-java-format.sh --fix
```