awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
kriskowal avatar

kriskowal/qArchived

0
View on GitHub↗
15,030 stars·1,187 forks·JavaScript·MIT·19 views

Q

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 capabilities for legacy API modernization, converting callback-style functions and Node.js APIs into promise-based interfaces. It further covers concurrent execution synchronization, task sequencing with retries and timeouts, and asynchronous result caching to prevent redundant executions.

Features

  • Asynchronous Control Flows - Coordinates the execution order and error propagation of non-blocking tasks using promises, timeouts, and retries.
  • Asynchronous Debugging Toolkits - Provides specialized tools for tracing long stack traces across asynchronous jumps in complex promise chains.
  • Asynchronous Stack Trace Reconstruction - Rewrites error stack traces to track execution across asynchronous jumps and find the origin of failures.
  • Asynchronous Task Processing - Sequences multiple asynchronous operations so that each step begins only after the previous one completes.
  • Task Execution Sequencing - Coordinates asynchronous tasks into sequential or parallel execution paths to manage operational dependencies.
  • All-Completion Synchronization - Fulfills a promise only after all input promises fulfill or rejects immediately upon the first failure.
  • All-Settlement Synchronization - Produces an array containing the final state and value of every input promise once they all fulfill or reject.
  • Asynchronous Flow Coordination - Provides patterns for managing the synchronization and resolution of concurrent asynchronous operations using promises.
  • Asynchronous Flow Libraries - Provides a library to manage the execution and coordination of asynchronous tasks and control flows.
  • Asynchronous JavaScript Programming - Manages the timing and execution of non-blocking operations using promises to avoid callback hell.
  • Asynchronous Promise Interfaces - Implements a comprehensive promise-based API for handling non-blocking operations in JavaScript.
  • Asynchronous Value Representations - Represents the eventual result of asynchronous operations as objects that can be observed for fulfillment or rejection.
  • Asynchronous API Modernization - Converts legacy callback-style functions and Node.js APIs into modern promise-based workflows.
  • Concurrency Management Libraries - Manages groups of concurrent operations to resolve only when all succeed or all have settled.
  • Asynchronous Error Handling - Captures errors thrown within asynchronous handlers and converts them into rejected promises for centralized management.
  • Promise-Based Flow Control - Processes the outcome of asynchronous operations by executing specific handlers for fulfillment, rejection, or progress.
  • Generator-Based Flow Control - Converts generator functions into asynchronous flows using yield to eliminate nested callback structures.
  • Promise-Based Object Proxies - Functions as a remote object proxy by intercepting method calls and routing responses back through promises.
  • Asynchronous Error Handlers - Automatically forwards rejections through promise chains until an appropriate error handler is encountered.
  • Asynchronous Stack Reconstruction - Provides specialized tools to reconstruct long stack traces across asynchronous jumps for easier debugging of promise chains.
  • Callback-to-Promise Converters - Wraps callback functions and legacy event interfaces into promises to ensure consistent chaining and error handling.
  • Unhandled Rejection Handlers - Monitors promises that reject without attached handlers to prevent silent failures through a centralized tracking system.
  • Asynchronous Stack Reconstruction - Rewrites error stacks to trace asynchronous jumps and preserve the call site across event loop turns.
  • Deferred Objects - Allows resolving or rejecting a promise manually via deferred objects to integrate with non-promise-based APIs.
  • Task Progress Indicators - Tracks and notifies the completion percentage of long-running tasks via incremental updates.
  • Remote Promise Messaging - Enables interaction with objects across different processes or networks by sending messages to promises.
  • Asynchronous Generator Runners - Runs generator functions asynchronously, treating yielded promises as sequential steps in a workflow.
  • Asynchronous Timing Constraints - Allows introducing minimum delays or maximum timeouts before an asynchronous operation fulfills or rejects.
  • Asynchronous Task State Controllers - Separates the ability to resolve or reject a task from the ability to observe its final outcome.
  • Asynchronous Task Retries - Provides built-in capabilities to re-attempt failed asynchronous tasks a specified number of times with delays.
  • First-Success Synchronization - Implements logic to fulfill a promise as soon as any one of multiple provided promises fulfills.
  • Remote Object Proxies - Forwarding method calls and responses between local promises and remote targets to interact with objects across networks.
  • Asynchronous Proxy Accessors - Allows asynchronous manipulation of proxied object properties and methods using promise-based getters and setters.
  • Asynchronous Task Queues - Organizes and executes asynchronous tasks using a queue to control concurrency and execution order.
  • Cleanup Execution Patterns - Ensures specific cleanup functions run after a promise settles regardless of success or failure to release resources.
  • Deferred Resolution Patterns - Implements the deferred resolution pattern to decouple promise completion logic from value consumption.
  • Generator-Based Flow Control - Executes generator functions by treating yielded promises as sequential steps to flatten asynchronous callback nests.
  • Sync-to-Promise Wrappers - Converts synchronous functions or variadic calls into promise-returning functions that capture exceptions as rejections.
  • Asynchronous Pipelines - Chains multiple asynchronous operations into pipelines where each step executes sequentially after the previous completion.
  • Proxy-Based Remote Invocation - Uses dynamic proxies to transparently route local method calls to remote objects and return the result as a promise.
  • Execution Stack Tracing - Retains the full asynchronous call history across promise jumps to simplify debugging of complex flows.
  • Resolution Authority Decoupling - Decouples the ability to resolve or reject a promise from the ability to observe its outcome.
  • Progress Update Notifications - Sends incremental progress updates from a pending promise to a handler before final resolution.
  • Asynchronous Control Flow - Implementation of asynchronous promises.
  • Control Flow Utilities - Tool for composing asynchronous promises.
  • Promise Implementations - Classic promise implementation featuring long stack traces.

Star history

Star history chart for kriskowal/qStar history chart for kriskowal/q

How this analysis was created: This summary and feature list are AI-generated from collected project material and can contain mistakes. Stars, license and language are imported from GitHub. Inclusion does not mean that we have tested or audited this project. Check the source documentation for any feature you depend on. Learn more on our About page.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Frequently asked questions

What does kriskowal/q do?

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.

What are the main features of kriskowal/q?

The main features of kriskowal/q are: Asynchronous Control Flows, Asynchronous Debugging Toolkits, Asynchronous Stack Trace Reconstruction, Asynchronous Task Processing, Task Execution Sequencing, All-Completion Synchronization, All-Settlement Synchronization, Asynchronous Flow Coordination.

Which projects share features with kriskowal/q?

Projects with overlapping indexed features include: rstacruz/cheatsheets — This project is a comprehensive collection of web development reference guides and technical cheat sheets. It provides… petkaantonov/bluebird — Bluebird is a JavaScript promise library designed for managing asynchronous operations with a custom promise… stefanpenner/es6-promise — es6-promise is an ES6 promise polyfill and JavaScript compatibility layer. It provides a standardized interface for… reactphp/reactphp — ReactPHP is an asynchronous runtime and event-driven I/O framework for PHP. It provides an environment for executing… bevacqua/es6 — This project is an ECMAScript 2015 reference guide and JavaScript language cheat sheet. It provides a concise summary… caolan/async — Async is a JavaScript asynchronous flow library designed to manage the execution and coordination of asynchronous…

Projects sharing features with Q

These projects share indexed features with Q. Shared tags can include platform or build tooling; verify the primary use case before treating a result as a replacement.
  • rstacruz/cheatsheetsrstacruz avatar

    rstacruz/cheatsheets

    14,429View on GitHub↗

    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

    SCSS
    View on GitHub↗14,429
  • petkaantonov/bluebirdpetkaantonov avatar

    petkaantonov/bluebird

    20,515View on GitHub↗

    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

    JavaScript
    View on GitHub↗20,515
  • stefanpenner/es6-promiseS

    stefanpenner/es6-promise

    7,263View on GitHub↗

    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,

    JavaScript
    View on GitHub↗7,263
  • reactphp/reactphpreactphp avatar

    reactphp/reactphp

    9,091View on GitHub↗

    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

    PHP
    View on GitHub↗9,091
  • Compare all 30 related projects→