18 dépôts
Architectural patterns for structuring test suites into reusable, nested sequences.
Distinct from Flow Modularization: Distinct from Flow Modularization: focuses on the composition of nested test flows specifically.
Explore 18 awesome GitHub repositories matching software engineering & architecture · Modular Flow Composition. Refine with filters or upvote what's useful.
RxJS is a library for reactive programming that provides a framework for composing asynchronous and event-based programs. It utilizes observable sequences to model data flows, allowing developers to manage complex sequences of events through a declarative programming interface. The library implements the observer pattern to facilitate decoupled communication between data producers and subscribers. By employing a lazy execution model, streams remain dormant until a consumer explicitly subscribes, at which point data production is triggered. This approach enables the construction of predictable
Models data flows as observable sequences that can be combined and transformed through a declarative interface.
RxSwift is a reactive programming library for Swift that provides a framework for managing push-based data flows and composing asynchronous, event-based programs. It utilizes observable sequences and functional operators to transform and filter asynchronous sequences through a declarative approach. The library is distinguished by its ability to link asynchronous data streams directly to user interface elements, automating view updates via reactive data binding. It includes specialized tools for tracking UI control properties and events on the main thread, as well as the ability to encapsulate
Provides functional operators to transform and filter event sequences through observable stream composition.
This project is a technical reference for implementing static typing in applications built with React and Redux. It provides a comprehensive guide for establishing type-safe state management, focusing on the configuration of stores, actions, and reducers using TypeScript type inference and unions. The guide covers architectural patterns for defining props, generic components, and higher-order components with strict type definitions. It also provides methods for managing ambient type configurations and augmenting third-party modules to resolve missing or incorrect TypeScript definitions. The
Defines side-effect logic using typed observable streams to ensure safety in asynchronous Redux workflows.
Falcor is a JavaScript library that models remote data as a single virtual JSON graph, providing a path-based query engine for efficient client-side data retrieval and updates. It represents multiple remote data sources as a unified document where entities are accessed via globally unique identity paths. The system distinguishes itself by treating the remote data model as a virtual JSON resource, allowing the client to query specific paths without managing individual endpoints. It uses a reference-aware graph model to handle many-to-many relationships and prevents data duplication. Network ef
Wraps data retrieval and mutation results in observable streams that treat errors as regular data values.
AngularFire is a set of tools for connecting applications to Firebase services. It provides a library of client-side interfaces for managing authentication, object storage, NoSQL databases, and serverless functions. The project utilizes observables and dependency injection to integrate cloud services into the application hierarchy. It features a reactive interface for streaming real-time data, managing document-based databases, and tracking authentication state as a continuous stream of tokens. The platform covers a broad range of cloud capabilities, including identity verification, binary f
Wraps cloud database listeners in observables to enable reactive UI updates as remote data changes.
This project is a sample library and implementation guide for using RxJava to manage asynchronous data streams and concurrent tasks in Android applications. It provides a collection of reference implementations for reactive programming, focusing on functional operators to transform and combine asynchronous data flows. The library demonstrates specific Android architectural patterns, such as implementing decoupled event buses for component communication and coordinating parallel network requests. It includes concrete examples of mobile-specific patterns including search input debouncing, list
Utilizes observable streams to propagate data changes from producers to multiple consumers using a push-based model.
UniRx is a reactive programming library and event orchestration framework for the Unity engine. It implements observable sequences and functional operators to transform callbacks, coroutines, and engine events into cancellable data streams for unified asynchronous event handling. The library provides a reactive UI binding system that synchronizes data models with user interface elements to trigger automatic visual updates. It includes a type-based publication and subscription system to route messages between producers and consumers, decoupling internal game components. The framework covers a
Transforms asynchronous event sequences into pipelines using functional operators to filter and merge data flows.
Rx.NET is a reactive programming framework and library for the .NET ecosystem used to compose asynchronous and event-based programs. It provides an observable data stream API that treats live sequences of information as collections, allowing developers to coordinate asynchronous event workflows using a declarative syntax. The project functions as an extension of language integrated query patterns to asynchronous streams. This allows for the filtering and transformation of asynchronous notifications and event sequences through the application of query operators. The framework covers asynchron
Implements observable stream primitives for modeling and composing complex event-based data flows.
RxGo est une bibliothèque de programmation réactive fonctionnelle et une implémentation de ReactiveX pour le langage Go. Elle sert de boîte à outils de traitement de flux asynchrone conçue pour coordonner les programmes basés sur les événements et les flux de données en utilisant le pattern observable. La bibliothèque permet la construction de pipelines de traitement asynchrones qui transforment, filtrent et combinent des séquences d'événements. Elle se distingue par l'utilisation d'opérateurs fonctionnels pour composer ces pipelines et fournit des mécanismes pour gérer l'exécution concurrente. La boîte à outils couvre un large éventail de capacités d'orchestration de flux, incluant l'agrégation de données, la combinaison de flux multiples et la conversion de flux en structures de données statiques. Elle inclut un support intégré pour la récupération d'erreurs, le contrôle de contre-pression (backpressure) pour réguler les vitesses de production de données, et le pooling de travailleurs pour paralléliser le traitement sur les cœurs CPU.
Provides diverse methods to generate event streams from static data, channels, and time-based intervals.
RxPY est une bibliothèque de programmation réactive fonctionnelle et une bibliothèque d'observables ReactiveX pour Python. Elle sert de processeur de flux asynchrone et de framework de coordination piloté par les événements, utilisé pour construire des pipelines de données qui réagissent aux changements d'état ou aux flux d'événements au fil du temps. La bibliothèque fournit une boîte à outils pour composer des programmes asynchrones et basés sur les événements en utilisant des séquences observables et des opérateurs. Elle se distingue par l'utilisation de planificateurs configurables pour gérer la concurrence, le timing et les cycles de vie des abonnements. Le projet couvre un large éventail de capacités de traitement de flux, y compris l'agrégation, le filtrage et la combinaison de données. Il fournit des mécanismes pour la diffusion d'événements, la mise en tampon de séquences et la gestion des erreurs, ainsi que des outils pour coordonner les flux observables avec des boucles d'événements asynchrones. Les tests et l'assurance qualité sont pris en charge par la simulation de temps virtuel, la modélisation par diagrammes de billes et la vérification des émissions.
Generates observable streams from various sources including manual triggers, time intervals, and existing data structures.
Ce dépôt est une collection de modèles d'implémentation pratiques et d'exemples de référence pour utiliser RxJava 2 afin de gérer des flux de données asynchrones dans les applications Android. Il sert de guide d'implémentation de programmation réactive, fournissant des exemples de code pour gérer une logique complexe pilotée par les événements et des modèles asynchrones dans des environnements mobiles. Le projet se distingue en fournissant des implémentations de référence spécifiques pour les défis mobiles courants, tels que la recherche en temps réel avec debouncing, la pagination de liste à la demande pour le défilement infini, et le streaming de données avec priorité au cache pour réduire les temps de chargement perçus. Il inclut également des exemples d'architectures de bus d'événements pour une communication applicative découplée. La base de code couvre un large éventail de capacités réactives, y compris la gestion du cycle de vie des abonnements pour éviter les fuites de mémoire, le changement de thread via des schedulers, et l'utilisation d'opérateurs fonctionnels pour la transformation et la combinaison de flux de données. Il démontre en outre la coordination réseau asynchrone et l'utilisation de composite disposables pour la gestion des abonnements de groupe.
Demonstrates the use of observable streams to notify multiple subscribers of data changes in a push-based model.
This project is a curated collection of technical interview questions and detailed answers designed for professional software engineering roles. It serves as an Angular framework study resource and interview guide for developers preparing for frontend engineering assessments. The resource covers core architectural patterns including component-based view architecture, hierarchical dependency injection, and declarative template binding. It also addresses implementation details regarding observable-driven data streams and the use of directives for DOM manipulation. Additional content focuses on
Explains the use of observable streams to handle asynchronous data flows and UI updates.
RxJavaSamples est une collection d'implémentations de référence et de guides pratiques pour appliquer des modèles réactifs à la gestion réseau asynchrone et à la gestion d'état. Il fournit des démonstrations de code pour intégrer des flux réactifs avec Retrofit afin de gérer les requêtes réseau de manière non bloquante. Le projet se concentre sur les modèles asynchrones pour la gestion des appels API, incluant la combinaison de flux concurrents et l'utilisation de sujets (subjects) pour mettre en cache les valeurs émises pour la gestion d'état. Il démontre spécifiquement comment implémenter des flux de travail de rafraîchissement automatique de jetons pour maintenir des sessions authentifiées sans interrompre l'utilisateur. Le dépôt couvre des capacités plus larges en orchestration de requêtes, telles que le séquençage d'appels réseau dépendants et l'agrégation de multiples requêtes parallèles en objets de réponse uniques. Il inclut également des implémentations pour le formatage des données de réponse et le mapping basé sur des adaptateurs des réponses API en objets Java structurés.
Processes asynchronous network events as observable data streams for real-time updates.
Akita is a JavaScript state management library that provides a system for managing application data and user interface state. It utilizes an observable data store and immutable state containers to synchronize data across interfaces, employing an entity state manager to handle flat collections of objects with unique identifiers. The project distinguishes itself through a comprehensive history management system that supports both global application-wide state reversal and granular, per-entity undo and redo functionality. It also includes a client-side data cache with time-to-live settings to pr
Utilizes observable streams to synchronize state changes and data transformations across the application.
This project is a comprehensive learning resource and technical reference for reactive programming with RxJS. It provides a structured curriculum, curated examples, and an indexed operator catalog to help developers shift from imperative to declarative programming using observable data streams and functional operators. The repository features a library of reactive UI patterns and implementation recipes. These cover practical applications such as type-ahead search, game loops, gesture-based interactions like swipe-to-refresh, and security overlays like lockscreens. The resource covers a broad
Models asynchronous events as observable data streams that can be transformed and combined using functional operators.
R3 is a reactive extensions library and asynchronous data pipeline framework. It provides a system for composing asynchronous data streams, managing reactive state, and coordinating event sequences using observable patterns. The project distinguishes itself with a deterministic testing toolkit that mocks time and frame updates to ensure reproducible unit tests for asynchronous logic. It also includes observability tools for tracking active subscriptions and generating stack traces to identify memory leaks, alongside centralized exception routing for pipeline recovery. The framework covers a
Provides core architectural patterns for modeling and composing asynchronous, push-based observable data streams.
threads.js is a JavaScript worker thread library and asynchronous task orchestrator designed to offload CPU-intensive tasks to background threads. It functions as a cross-platform worker pool and a TypeScript worker runner that automatically transpiles and executes TypeScript files within separate threads. The project distinguishes itself by providing a unified worker API that allows for cross-platform execution across different JavaScript environments. It includes a specialized worker data serialization tool to pass complex class instances and binary data between threads, and supports inlini
Uses a push-based stream of events to transmit continuous updates from a background thread to the main thread.
This project provides a collection of type-safe wrappers designed to bridge web-based applications with native mobile hardware and system services. It functions as a cross-platform framework that normalizes disparate native plugin behaviors into a unified interface, allowing developers to access device sensors and system capabilities consistently across multiple mobile operating systems. The framework distinguishes itself by wrapping asynchronous native callbacks into reactive streams, simplifying the management of continuous hardware events and data updates. It includes robust mocking capabi
Wraps asynchronous native callbacks into reactive streams to simplify the management of continuous hardware events.