https://github.com/vert-x3/vertx-rx
Reactive Extensions for Vert.x
https://github.com/vert-x3/vertx-rx
java rxjava rxjava2 rxjs vertx
Last synced: 6 days ago
JSON representation
Reactive Extensions for Vert.x
- Host: GitHub
- URL: https://github.com/vert-x3/vertx-rx
- Owner: vert-x3
- License: apache-2.0
- Created: 2014-11-21T16:02:03.000Z (about 11 years ago)
- Default Branch: master
- Last Pushed: 2025-12-15T16:11:03.000Z (about 1 month ago)
- Last Synced: 2026-01-14T04:57:34.924Z (12 days ago)
- Topics: java, rxjava, rxjava2, rxjs, vertx
- Language: Java
- Homepage:
- Size: 3.15 MB
- Stars: 152
- Watchers: 23
- Forks: 70
- Open Issues: 7
-
Metadata Files:
- Readme: README.adoc
- License: LICENSE.txt
Awesome Lists containing this project
- vertx-awesome - Vert.x Rx - favicon.svg" alt="(stack)" title="Vert.x Stack" height="16px"> - Vert.x Reactive Extensions. (Reactive)
README
= Rx extension for Vert.x
image:https://github.com/vert-x3/vertx-rx/actions/workflows/ci-5.x.yml/badge.svg["Build Status (5.x)",link="https://github.com/vert-x3/vertx-rx/actions/workflows/ci-5.x.yml"]
image:https://github.com/vert-x3/vertx-rx/actions/workflows/ci-4.x.yml/badge.svg["Build Status (4.x)",link="https://github.com/vert-x3/vertx-rx/actions/workflows/ci-4.x.yml"]
Vert.x module adding support for Reactive Extensions (Rx) using the Rx libraries. This
allows Vert.x developers to use the Rx type-safe composable API to build Vert.x verticles.
This module provides helpers for adapting Vert.x stream and future constructs to Rx observables.
== Documentation
* http://vertx.io/docs/vertx-rx/java2/[RxJava 2 Documentation]
* http://vertx.io/docs/vertx-rx/java3/[RxJava 3 Documentation]
== Stack integration
RxJava2 and RxJava3 are integrated with the Vert.x stack.
=== Integration tests
Integration tests are placed here:
* https://github.com/vert-x3/vertx-rx/tree/master/rx-java2/src/test/java/io/vertx/it[RxJava 2]
* https://github.com/vert-x3/vertx-rx/tree/master/rx-java3/src/test/java/io/vertx/it[RxJava 3]
=== Integration docs
Integration docs are placed here:
* https://github.com/vert-x3/vertx-rx/tree/master/rx-java3/src/main/asciidoc[RxJava 3]
The corresponding component uses an asciidoctor https://asciidoctor.org/docs/user-manual/#include-directive[include] directive
to embed the doc snippet:
[source,asciidoc]
----
ifeval::["$lang" == "java"]
include::override/rxjava3.adoc[]
endif::[]
----
Vert.x Web Client example:
* https://github.com/vert-x3/vertx-web/blob/master/vertx-web-client/src/main/asciidoc/override/rxjava3.adoc
is replaced by
* https://github.com/vert-x3/vertx-rx/blob/master/rx-java3/src/main/asciidoc/vertx-web-client/java/override/rxjava3.adoc
The final aggregation happens in the https://github.com/vert-x3/vertx-stack/tree/master/stack-docs[stack generation] module.