18 Repos
Advanced libraries for reactive programming and architectural patterns.
Explore 18 awesome GitHub repositories matching part of an awesome list · Advanced Development Frameworks. Refine with filters or upvote what's useful.
RxJava is a reactive stream processing framework and JVM reactive extensions library. It serves as an asynchronous dataflow orchestrator used to compose event-based programs by transforming, combining, and consuming real-time data flows on the Java Virtual Machine. The project distinguishes itself through integrated backpressure flow control, which manages the emission rate between producers and consumers to prevent memory exhaustion. It further provides mechanisms for concurrent thread management and parallel data processing to offload blocking operations and maintain application responsiven
Reactive extensions for composing asynchronous programs.
EventBus is a publish-subscribe messaging library designed to facilitate decoupled communication between components in Java applications. It functions as a central hub where producers dispatch events that are routed to subscribers based on the class type of the payload. By using annotation-based markers, the system maps event handlers to specific data types, allowing different parts of an application to exchange information without requiring direct references between classes. The library distinguishes itself through a focus on performance and execution control. It utilizes a compile-time inde
Optimized event bus for component communication.
RxAndroid is a reactive programming library and binding layer that integrates RxJava with the Android runtime environment. It provides a framework for composing asynchronous data streams and managing event-driven workflows specifically tailored for Android's threading requirements. The library functions as an Android thread scheduler, routing reactive operations to the main UI thread or specific Android loopers. This ensures that asynchronous task outcomes are dispatched to the primary interface thread for safe updates of visual components while preventing background processing from blocking
Reactive extensions for Android-specific components.
JavaPoet is a source code generator and metaprogramming utility for the Java language. It functions as an abstract syntax tree construction library that allows developers to model classes, methods, and fields as objects before emitting them as source code. The library distinguishes itself through automatic import management and code formatting. It tracks referenced types to generate required import statements and handles line wrapping, semicolon placement, and indentation to ensure generated files remain readable. The tool covers a broad range of generation capabilities, including the defini
API for generating Java source files.
RxBinding is an Android UI binding library that transforms standard view listeners into RxJava observables. It serves as a bridge and reactive wrapper, converting user interactions and widget states into reactive data flows. The project enables the implementation of reactive programming patterns across Android system interactions. By treating UI interactions as data streams, it allows for the asynchronous handling of events to decouple the view layer from business logic. The library covers the conversion of UI events into streams, the management of widget states to trigger application update
RxJava bindings for Android UI widgets.
android-ktx is a Kotlin extension library for the Android framework. It provides a collection of idiomatic helper functions that wrap native system calls to reduce boilerplate and improve code readability throughout Android application development. The library implements a set of tools for building styled strings, transformation matrices, and graphical elements. It utilizes a builder-based syntax to simplify the construction of system objects such as content values and data bundles. The project covers a broad range of capabilities, including the simplification of view manipulations and time
Kotlin extensions for more idiomatic Android development.
Mosby ist ein Presentation-Layer-Framework für Android-Anwendungen, das dazu entwickelt wurde, Anwendungszustand und Benutzerabsichten (Intents) zu verwalten. Es fungiert als architektonisches Werkzeug, das sowohl Model-View-Intent (MVI) als auch Model-View-Presenter (MVP)-Muster implementiert. Das Framework nutzt einen unidirektionalen Datenfluss, um eine Single Source of Truth aufrechtzuerhalten, wodurch sichergestellt wird, dass Zustandsaktualisierungen vorhersehbar bleiben, indem Intents durch einen einzigen Logikpfad verarbeitet werden. Es trennt die Geschäftslogik von der View-Schicht, um die Präsentationslogik von Android-Activity- und Fragment-Klassen zu entkoppeln. Das System bietet Funktionen für Zustandsmanagement und Navigationskoordination, wobei der Anwendungszustand mit Bildschirmübergängen synchronisiert wird.
Model-View-Presenter and Model-View-Intent library.
gradle-retrolambda ist ein Gradle-Plugin und Bytecode-Transformer, mit dem moderne Java-Lambda-Ausdrücke in älteren Java- und Android-Laufzeitumgebungen verwendet werden können. Es fungiert als Backporting-Tool, das sicherstellt, dass moderne funktionale Programmiersyntax mit älteren virtuellen Maschinen kompatibel bleibt. Das Projekt transformiert kompilierte Klassendateien, um sie mit Java 6- und 7-Umgebungen kompatibel zu machen. Dies ermöglicht die Nutzung moderner Java-Features in Projekten, die eine Abwärtskompatibilität zu älteren API-Levels und Legacy-Android-Geräten wahren müssen. Das Tool integriert sich in den Gradle-Build-Prozess und wendet nach der Kompilierung Transformationen an, um die Binärausgabe anzupassen. Es nutzt Bytecode-Desugaring, um Lambda-Ausdrücke in anonyme innere Klassen umzuwandeln und kompatible Laufzeit-Bridges zu generieren.
Gradle plugin for Java lambda support on older Android.
Automatic binding+disposal of RxJava streams.
Automatic binding and disposal for RxJava streams.
RxJava types that are both an Observable and a Consumer.
RxJava types acting as both Observable and Consumer.
Stream API from Java 8 rewritten on iterators for Java 7 and below
Java 8 stream API backported for older Java versions.