Don't write Reactive Streams yourself! Reactor's modules are embeddable and interoperable. They focus on providing rich and functional Reactive Streams APIs. You can use Reactor at any level of granularity:
in frameworks such as Spring Boot and WebFlux
in drivers and clients such as the CloudFoundry Java Client
in contracts or protocols such as RSocket and R2DBC