# smallrye-mutiny **Repository Path**: AntsCodeTop/smallrye-mutiny ## Basic Information - **Project Name**: smallrye-mutiny - **Description**: No description available - **Primary Language**: Java - **License**: Apache-2.0 - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2022-02-17 - **Last Updated**: 2022-02-17 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README image:https://github.com/smallrye/smallrye-mutiny/actions/workflows/build-main.yml/badge.svg[Build Status] image:https://sonarcloud.io/api/project_badges/measure?project=smallrye_smallrye-mutiny&metric=alert_status["Quality Gate Status", link="https://sonarcloud.io/dashboard?id=smallrye_smallrye-mutiny"] image:https://img.shields.io/github/license/smallrye/smallrye-mutiny.svg["License", link="https://www.apache.org/licenses/LICENSE-2.0"] image:https://img.shields.io/maven-central/v/io.smallrye.reactive/mutiny?color=green[Maven Central] image:https://javadoc.io/badge2/io.smallrye.reactive/mutiny/javadoc.svg["Javadoc", link="https://javadoc.io/doc/io.smallrye.reactive/mutiny"] == ⚡️ Mutiny, an Intuitive Event-Driven Reactive Programming Library for Java https://smallrye.io/smallrye-mutiny/[Mutiny is a novel reactive programming library]. Mutiny provides a simple but powerful asynchronous development model that lets you build reactive applications. === 🚀 Overview Mutiny can be used in any Java application exhibiting asynchrony. From reactive microservices, data streaming, event processing to API gateways and network utilities, Mutiny is a great fit. ==== Event-Driven Mutiny places events at the core of its design. With Mutiny, you observe events, react to them, and create elegant and readable processing pipelines. TIP: A PhD in functional programming is not required. ==== Navigable Even with smart code completion, classes with hundred of methods are confusing. Mutiny provides a navigable and explicit API driving you towards the operator you need. ==== Non-Blocking I/O Mutiny is the perfect companion to tame the asynchronous nature of applications with non-blocking I/O. Declaratively compose operations, transform data, enforce progress, recover from failures and more. ==== Quarkus and Vert.x native Mutiny is integrated in https://quarkus.io[Quarkus] where every reactive API uses Mutiny, and https://vertx.io[Eclipse Vert.x] clients are made available using https://github.com/smallrye/smallrye-reactive-utils[Mutiny bindings]. Mutiny is however an independent library that can ultimately be used in any Java application. ==== Reactive Converters Built-In Mutiny is based on the Reactive Streams specification, and so it can be integrated with any other reactive programming library. In addition, Mutiny offers converters to interact with other popular libraries and https://kotlinlang.org/[Kotlin]. === 📦 Build instructions Mutiny is built with Apache Maven, so all you need is: [source,bash] ---- mvn install ---- We currently support Java 8 and beyond. Mutiny passes the https://github.com/reactive-streams/reactive-streams-jvm[Reactive Streams TCK]. === ✨ Contributing See link:CONTRIBUTING.md[the contributing guidelines] Mutiny is an open project, feel-free to: * https://github.com/smallrye/smallrye-mutiny/issues[report issues], and * https://github.com/smallrye/smallrye-mutiny/pulls[propose enhancements via pull-requests]. === 👋 Discussions and support For anything related to the usage of Mutiny in Quarkus, please refer to the https://quarkus.io/support/[Quarkus support] For more general discussions about Mutiny, you can: * https://github.com/smallrye/smallrye-mutiny/discussions[start a new discussion thread in GitHub Discussions (preferred option)], or * https://stackoverflow.com/questions/tagged/mutiny[use the `mutiny` tag on StackOverflow]. === 🧪 Publications Julien Ponge, Arthur Navarro, Clément Escoffier, and Frédéric Le Mouël. 2021. **https://doi.org/10.1145/3486605.3486788[Analysing the Performance and Costs of Reactive Programming Libraries in Java].** _In Proceedings of the 8th ACM SIGPLAN International Workshop on Reactive and Event-Based Languages and Systems (REBLS ’21)_, October 18, 2021, Chicago, IL, USA. ACM, New York, NY, USA, 10 pages. https://hal.inria.fr/hal-03409277/document[(PDF)]