30 open-source projects similar to google/promises, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Promises alternative.
Reactor Core is a reactive programming toolkit and non-blocking foundation for composing asynchronous data pipelines on the JVM. It serves as an asynchronous stream processing framework and a backpressure management system, allowing developers to transform, filter, and combine sequences of events while regulating data flow between producers and consumers to prevent resource exhaustion. The library differentiates itself through a sophisticated concurrency scheduling system and demand-based flow control. It decouples signal processing from specific threads using a scheduler registry and provide
Bolts-Swift is a concurrency control framework designed to manage asynchronous workflows in native mobile applications. It provides a collection of primitives that allow developers to orchestrate background operations through a promise-based model, replacing deeply nested callback structures with chainable task sequences. The library distinguishes itself by offering granular control over task lifecycles and execution environments. It enables developers to define custom executors for specific threading contexts and provides mechanisms to manually signal the completion, error, or cancellation o
PromiseKit is a future-based concurrency framework and promise library for Swift and Objective-C. It functions as an asynchronous workflow coordinator, representing the eventual result of an operation to simplify concurrency logic and replace nested callback structures. The framework enables the coordination of both sequential and parallel asynchronous tasks. It provides a structured pipeline for chaining operations, allowing the results of one task to be passed into the next and facilitating the execution of multiple operations simultaneously. The library includes a state-machine based reso
Concurrent Ruby is a comprehensive concurrency toolkit for the Ruby language that provides thread-safe data structures, synchronization primitives, and asynchronous execution patterns. It implements core concurrency abstractions including an actor model framework where isolated actors communicate through asynchronous message passing, a future and promise system for composing non-blocking operations, and thread pool executors that manage reusable worker threads for concurrent task execution. The library distinguishes itself through a broad set of coordination mechanisms that go beyond basic th
This repository is a collection of practical code snippets and implementation patterns for Flutter and Dart. It serves as a comprehensive guide and reference for asynchronous programming, state management patterns, and UI component design. The project provides advanced language reference material covering generics, reflection, factory constructors, and null-aware operators. It also includes specific utilities for manipulating Dart collections, such as helper methods for transforming and filtering maps, lists, and iterables. The coverage extends to high-level capabilities including asynchrono
Returns is a functional programming library for Python that provides type-safe containers for managing state, error handling, and optionality. It serves as a monadic container library and a type-safe error handling framework, replacing traditional try-catch blocks and null checks with Result and Optional containers to treat exceptions as data. The project is distinguished by its use of a specialized Mypy static analysis plugin to validate functional pipelines and emulate higher kinded types. It provides mechanisms for isolating side effects through IO containers and offers a framework for typ
neverthrow is a TypeScript result type library that implements railway oriented programming. It provides a functional error handling framework using type-safe wrappers to represent operation outcomes as either success or failure variants, eliminating the need to throw exceptions. The library features adapters that convert throwing functions and asynchronous promises into typed result objects. This allows asynchronous rejections and unsafe code to be handled as explicit return values rather than uncaught exceptions. The framework covers a broad range of functional computation capabilities, in
Wepy is a mini program development framework used to build modular user interfaces through a component-based development style. It functions as a component-based UI framework that enables the creation of reusable interface elements sharing state and logic across different platform targets. The project includes a TypeScript build pipeline that transforms TypeScript, CSS pre-processors, and template engines into browser-ready assets. It also serves as an asynchronous API wrapper that converts callback-based functions into promises to simplify asynchronous control flow. The framework covers cro
This project is a PHP implementation of the Promises/A+ specification, providing a library for managing asynchronous operations and deferred values. It serves as an asynchronous task coordinator that allows for the creation of non-blocking code through a promise-based pattern. The library enables the simulation of asynchronous coroutines, allowing non-blocking code to be written in a linear style. It features duck-typed interoperability, which allows it to integrate with any foreign object that implements a then method regardless of class inheritance. The project covers broader capabilities
Deepagents is an LLM agent orchestration platform and stateful application server designed for deploying and managing AI agents built with computational graphs. It provides a containerized runtime environment that handles agent execution, state persistence, and the versioning of AI assistants. The platform distinguishes itself through deep integration with the Model Context Protocol, allowing agents to function as servers that expose tools and capabilities to external clients. It features a sophisticated observability suite for capturing execution traces, performing LLM-based evaluations agai
Restangular is a REST client and resource mapper for AngularJS applications. It provides a suite of tools for mapping API endpoints to local objects and collections, facilitating frontend CRUD implementation through standard HTTP methods. The project distinguishes itself through an async data binding system that links user interface elements to server-side objects, ensuring automatic updates upon request completion. It also features a programmable request interceptor pipeline for modifying headers and transforming responses, as well as a JSONP request handler to bypass same-origin policy rest
MPX is a cross-platform framework designed to build applications for multiple mini-program ecosystems and the web from a single codebase. It utilizes a static transpilation pipeline to transform source code into platform-specific bundles, employing a single-file component system that encapsulates templates, logic, and styles. The framework provides a reactive state management system that automatically synchronizes application data with the user interface through computed properties and watchers. The project distinguishes itself through a robust build-time toolchain that supports sub-package p
Liteflow is a component-based rule engine and workflow orchestrator used to define business logic through a chain of reusable components. It utilizes a structured data language to map logic paths, functioning as a dynamic workflow engine for managing sequences of synchronous and asynchronous tasks. The project is distinguished by its support for hot deployment, allowing rule definitions and execution logic to be updated in real time without restarting the application. It also features a multi-language scripting engine that embeds external scripts into business rules to enable flexible logic c
ROMA is an agentic workflow engine and recursive task orchestrator designed to coordinate autonomous agents in the execution of complex workflows. It functions as a multi-agent framework that decomposes high-level goals into atomic subtasks and manages their execution through a dependency graph. The system distinguishes itself through a hierarchical plan-execute loop that recursively decomposes objectives and synthesizes results from leaf-node tasks upward. It ensures execution purity via atomic task isolation, assigning dedicated storage directories to individual tasks to prevent data interf
es6-promise is an ES6 promise polyfill and JavaScript compatibility layer. It provides a standardized interface for managing asynchronous flow control and background tasks in environments that lack native support for the ES6 Promise specification. The project serves as a bridge to ensure consistent asynchronous behavior across different browser engines and legacy environments. It includes utilities for global promise injection and polyfilling, which add the implementation to the global namespace for application-wide availability. The library covers the coordination of asynchronous workflows,
Zero-cost asynchronous programming in Rust
This project is a comprehensive collection of web development reference guides and technical cheat sheets. It provides a curated set of markdown-based documentation designed to help developers quickly locate syntax patterns and API examples for common web technologies and programming languages. The repository serves as a specialized reference library covering several distinct technical domains. It includes extensive guides for CSS, focusing on selectors, Flexbox, Grid, and responsive layout properties, as well as a DevOps command reference for Docker, Kubernetes, AWS, Ansible, and general she
Seastar is a C++ server application framework and asynchronous programming library designed for building high-performance, shared-nothing server applications. It functions as a high-performance I/O engine providing direct disk and network access through a shared-nothing framework that partitions data and execution across CPU cores. The framework distinguishes itself through a thread-per-core architecture that eliminates locking and resource contention by assigning one execution thread to each physical CPU core. It implements a userspace TCP/IP stack and kernel-bypass techniques, integrating w
The Reactive Extensions for JavaScript
This project is an ECMAScript 2015 reference guide and JavaScript language cheat sheet. It provides a concise summary of the language specifications, syntax updates, and new features introduced in the 2015 standard. The guide serves as a technical overview of modern language patterns used to manage modular code structures and asynchronous operations. It functions as a reference for implementing current coding standards and studying core updates to the language. The content covers a wide range of capabilities, including asynchronous programming, object modeling, and module management. It deta
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
Bluebird is a JavaScript promise library designed for managing asynchronous operations with a custom promise implementation. It provides a framework for controlling promise lifecycles and orchestrating non-blocking programming patterns. The library distinguishes itself with an asynchronous debugging toolkit that captures long stack traces across asynchronous boundaries and a global handler for unhandled promise rejections. It includes a predicate-based error filtering system to target specific exception types and a mechanism for the deterministic cleanup of system resources. It covers a broa
Hatchet is an open-source durable workflow engine and task orchestration platform. It provides a framework for building and executing fault-tolerant, multi-step pipelines as directed acyclic graphs (DAGs), with automatic retries, scheduling, and real-time observability. The system is built around durable task checkpointing, which persists execution state after each step so work can resume from the last checkpoint after a worker crash or restart, and it supports event-driven task resumption that pauses a task until a matching external event arrives. The platform distinguishes itself through it
Tower is a modular service abstraction layer for the Rust programming language, providing a framework for building asynchronous request-response pipelines. It serves as a set of core components for managing backpressure, balancing loads, and abstracting service discovery. The project distinguishes itself through a layer-based middleware composition model, allowing services to be wrapped in recursive chains of decorators. This enables the declarative application of cross-cutting concerns, such as timeouts, rate limiting, and retries, in a protocol-agnostic manner. The library covers a broad r
language-ext is a functional programming framework for C# that provides a suite of immutable data structures and monadic types. It enables the implementation of pure functional programming patterns, utilizing containers to manage side effects, optional values, and error handling. The library is distinguished by its advanced concurrency and state management tools, including a software transactional memory system and lock-free atomic references. It also provides specialized utilities for distributed systems, such as vector clocks for causality tracking and deterministic data conflict resolution
fuckitjs is an automated code pruning utility and error recovery tool for JavaScript. It is designed to isolate and remove breaking lines of code through repeated evaluation and selective excision to ensure a script executes successfully. The tool identifies and excises problematic code segments by iteratively evaluating scripts until runtime crashes are eliminated. It employs a process of identifying and slicing out specific failing lines to mitigate errors and allow a script to run to completion. This capability surface covers automated code cleaning, dynamic script debugging, and JavaScri
q is a JavaScript promise library and asynchronous flow controller designed to manage non-blocking operations. It serves as a system for coordinating parallel tasks and sequencing asynchronous workflows through task chaining and error propagation. The library distinguishes itself with specialized debugging tools that capture long stack traces across asynchronous jumps and monitor unhandled rejections to prevent silent failures. It also functions as a remote object proxy, forwarding method calls to remote targets and routing responses back through promises. The project provides comprehensive
Vert.x is a reactive polyglot framework and asynchronous programming library for the Java Virtual Machine. It functions as an event-driven networking framework and toolkit for building non-blocking applications. The system enables the development of high-concurrency network services and event-driven microservices. It supports the creation of reactive services using multiple languages running on the JVM. The framework covers a wide range of capabilities including the management of HTTP and TCP network protocols, non-blocking file system access, and the integration of reactive clients.
This project is a promise-based HTTP client for Node.js that wraps callback-style network requests into promise objects. It serves as a library for sending JSON, form data, and multipart requests to web servers while managing asynchronous flow control. The library utilizes a specialized Bluebird promise implementation to handle request and response lifecycles. It includes a session manager that uses a cookie jar to maintain and transmit state across multiple network calls. The tool covers a broad range of network capabilities, including REST API integration, response data transformation, and