30 open-source projects similar to mxcl/promisekit, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best PromiseKit alternative.
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
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,
Bolts-ObjC is an Objective-C mobile development library providing tools for coordinating asynchronous operations and routing deep links within native applications. It functions as a framework for managing background tasks and resolving navigation metadata to direct users to specific content. The library includes a deep link routing engine and an app link navigator that resolve handler compatibility to launch native experiences or trigger web browser fallbacks. It also features a mobile analytics link logger to track user movement through deep links for integration with external analytics plat
A publish/subscribe EventBus optimized for iOS
Promise progress pause cancel retry for Swift.
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
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 project is a promise-based concurrency framework and asynchronous task library for Swift and Objective-C. It functions as a workflow orchestrator that uses monadic transformations to chain operations and propagate results through a state machine. The library specializes in transforming traditional completion-handler APIs into promise-based structures to enable sequential execution. It provides mechanisms for coordinating simultaneous background processes, including the ability to aggregate results from multiple tasks or synchronize operations through racing and waiting. The framework co
thiserror is a Rust error handling library and procedural macro designed to define custom error types. It functions as a trait implementation automator that generates the necessary code for standard library error traits at compile time. The library focuses on eliminating boilerplate by using derive macros to automatically implement display and source methods. It allows for the creation of custom error structs and enums that can map low-level errors to high-level variants while preserving the original cause and backtrace information. Its capabilities cover custom error formatting through temp
Rayon is a data parallelism library for Rust that provides a framework for converting sequential computations into parallel operations. It enables the transformation of standard data structures and loops into parallel iterators, allowing workloads to be distributed across multiple processor cores. By utilizing a work-stealing scheduler, the library dynamically balances tasks to maximize throughput and minimize execution time. The library distinguishes itself through its focus on safe, scoped task synchronization, which ensures that all spawned operations complete before a scope exits to preve
:alarm_clock: A lightweight implementation of Promises in Swift
ReactPHP is an asynchronous runtime and event-driven I/O framework for PHP. It provides an environment for executing concurrent tasks through a central event loop implementation and reactor pattern, allowing applications to handle multiple operations without pausing the main execution thread. The project includes a specialized asynchronous socket library for TCP, UDP, and TLS communication, alongside a non-blocking HTTP server and client for streaming web requests and responses. Its capability surface covers asynchronous control flow via promises and fibers, non-blocking network connectivity
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
pysheeet is a technical reference library providing a curated collection of code snippets and implementation patterns for advanced Python development, system integration, and high-performance computing. It serves as a comprehensive guide for implementing low-level network programming, native C extensions, and asynchronous and concurrent programming. The project provides specialized frameworks for the development and deployment of large language models, including tools for distributed GPU inference and high-performance serving. It also includes detailed patterns for high-performance computing
Dva is a state management library and client-side application framework designed for building user interfaces with React and Redux. It functions as an asynchronous logic orchestrator and a single page application router, organizing application data through a structured data flow of reducers, effects, and subscriptions. The framework distinguishes itself through the use of generator functions to manage asynchronous workflows and sequential side effects, keeping these operations separate from synchronous state updates. It implements namespace-based model organization to group business logic and
coobjc is an Objective-C coroutine library that provides await methods and generators to simplify asynchronous programming in Objective-C and Swift. It enables the implementation of non-blocking workflows to eliminate nested callbacks and thread blocking. The toolkit includes a non-blocking Foundation wrapper to convert synchronous Foundation and UIKit APIs into suspendable operations. It provides a lazy sequence generator for producing values on demand via yield, as well as a channel-based communication tool for exchanging data between concurrent tasks using buffered and unbuffered channels.
DreamBerd is a general purpose programming language designed for building applications with integrated support for reactive state, time-aware memory management, and embedded user interface markup. It functions as a programming environment that tracks dynamic values and coordinates asynchronous tasks through sequential execution constraints. The language is distinguished by its ability to track variable history, providing dedicated keywords to retrieve previous, current, and future values of variables during execution. It further differentiates itself through a memory model that controls varia
This repository is a collection of practical implementation patterns and reference samples for using RxJava 2 to manage asynchronous data streams in Android applications. It serves as a reactive programming implementation guide, providing code examples for handling complex event-driven logic and asynchronous patterns within mobile environments. The project distinguishes itself by providing specific reference implementations for common mobile challenges, such as real-time search with debouncing, on-demand list pagination for infinite scrolling, and cache-first data streaming to reduce perceive
Bacon.js is a JavaScript functional reactive programming library used for coordinating complex asynchronous data flows. It functions as an observable event stream framework and an asynchronous data flow orchestrator, allowing developers to model events as declarative streams and properties. The library distinguishes itself through its ability to manage reactive state and synchronize timing across multiple sources. It provides specialized mechanisms for atomic state synchronization to prevent glitches in derived properties and offers advanced coordination strategies such as asynchronous stream
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.
Anyhow is a dynamic error handling library for Rust applications that provides a flexible error container using type erasure. It serves as a tool for simplifying error signatures by wrapping diverse failure types into a single object, allowing for the propagation of any error that implements the standard error trait without requiring a custom enumeration for every function. The project functions as an error context provider by attaching high-level diagnostic information and recording execution stack traces at the point of failure. It enables the recovery of concrete error implementations from
This project is a comprehensive guide and educational resource for the TypeScript language. It covers the fundamental principles of the language, including its structural type system, static type analysis, and the process of transpiling typed source files into JavaScript. The material details how to model complex data and reusable type logic using generics, conditional types, and mapped types. It also explains the use of declaration files to provide type safety for external JavaScript libraries and the integration of type checking into existing JavaScript projects via JSDoc annotations. The
Abseil is a common utility library for C++ that provides foundational building blocks for applications. It serves as a collection of optimized utility functions and data structures that augment the C++ standard library across different compiler versions. The library is distinguished by its high-performance containers, including SIMD-accelerated hash maps and sets for efficient key-value lookups. It also provides a comprehensive framework for computing absolute time points, durations, and timestamps across global time zones. The project covers a broad range of capability areas, including conc
Eloquent-JavaScript is a comprehensive JavaScript programming textbook and interactive coding tutorial designed for web development education. It serves as both a language reference and a practical guide, combining theoretical lessons with an environment where learners can execute and modify code examples. The project focuses on the fundamental principles of the JavaScript language, including lexical scoping, prototype-based inheritance, and asynchronous patterns. It provides detailed instruction on object-oriented programming, functional programming, and the use of the browser DOM to create
npm-run-all is a command-line and programmatic tool for running multiple npm scripts in sequence, parallel, or mixed combinations without requiring an external task runner. It provides a straightforward way to orchestrate complex multi-step build or test workflows directly from the terminal or from within Node.js application code. The tool distinguishes itself by supporting mixed execution plans that combine sequential and parallel steps into a single command, allowing users to define dependency graphs where some scripts run concurrently while others wait for completion. It manages child-proc
c3c is the compiler for the C3 programming language, transforming source code into executable binaries, static libraries, or dynamic libraries using an LLVM backend. It implements a system based on result-based error handling, scoped memory pooling, and a semantic macro system. The compiler provides first-class support for hardware-backed SIMD vectors that map directly to processor instructions and enables runtime polymorphism through interface-based dynamic dispatch. The project covers a broad set of low-level capabilities, including manual and pooled memory management, inline assembly inte
This library provides a centralized state management system for handling modal lifecycles and visibility within React applications. By decoupling modal triggers from the component hierarchy, it enables developers to manage UI overlays globally without the need for passing visibility flags through deep component trees. The system utilizes a registry pattern to define reusable modal templates, allowing for dynamic component injection and programmatic instantiation from any location in an application. It distinguishes itself through a promise-based orchestration model, which allows calling compo
Async is a JavaScript asynchronous flow library designed to manage the execution and coordination of asynchronous tasks in Node.js and the browser. It provides functional utilities to wrap, process, and orchestrate complex asynchronous workflows. The library distinguishes itself through a comprehensive task orchestrator that handles dependency graphs to resolve circular references and manages concurrent task queues. It includes a unification bridge that allows callback-style and promise-based functions to operate within the same execution interface. The project covers several primary capabil