# reactphp/promise

Promises/A implementation for PHP.

Repository: https://github.com/reactphp/promise
Canonical: https://ross.abutalabs.com/products/reactphp-promise
Homepage: https://reactphp.org/promise/
Language: PHP
License: MIT
License Family: permissive
Topics: php, reactphp, promise
Last push: 2026-05-10T22:28:52+00:00

## Health v2 (maintenance only)
Score: 61/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 81, release rhythm 12, longevity 100
- inputs: {"age_days": 5061, "days_push": 115, "days_rel": 379, "gap_med": null, "n_releases_24m": 1}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 2458, forks 149 (observed 2026-08-28T04:06:53.347931+00:00)

## What it is
A lightweight implementation of CommonJS Promises/A for PHP, providing Deferred and Promise abstractions for representing pending asynchronous computations. It includes utilities like all(), race(), and any() for combining and managing collections of promises.

## Use cases
- handle async results in PHP without callbacks nesting
- combine multiple async operations with all() or race()
- write promise-based async PHP code
- manage deferred computations in event-driven PHP applications
- avoid callback hell in ReactPHP applications

## When to choose
- you're building async PHP apps, especially with ReactPHP
- you need a battle-tested, production-ready Promises/A implementation
- you want to compose concurrent operations with all/race/any combinators

## When to avoid
- your codebase is fully synchronous with no async needs
- you're using PHP with native fibers/async solutions that don't interop with promises

## Facets
- artifact type: library
- maturity: stable
- function: concurrency, developer-tools
- domain: developer-tools, web-development, backend
- platform: php, cross-platform
- tags: promises, async, deferred, reactphp, commonjs-promises-a

## Member repositories
- reactphp/promise (main) score 61

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:06:53.347931+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T02:30:00.915267+00:00, confidence not recorded.
  - readme: https://github.com/reactphp/promise (fetched 2026-08-28T04:06:53.347931+00:00, sha 8dcca6fc7675)
  - homepage: https://reactphp.org/promise/ (fetched 2026-08-29T10:11:10.436658+00:00, sha acf3d07866ad)
  - site_page: https://reactphp.org/changelog.html (fetched 2026-08-29T10:11:10.446913+00:00, sha accf57fc05ce)
  - site_page: https://reactphp.org/promise/changelog.html (fetched 2026-08-29T10:11:10.450141+00:00, sha 24b37f5ccb3b)
- Data as of 2026-08-30T08:39:29.467469+00:00.
