Nice! My idct/php-nats-jetstream-client is now listed on NATS' official website (https://nats.io)! 🚀

It is an async-first NATS and JetStream client for PHP 8.2+, built on the AMPHP event loop, so all I/O is non-blocking. It covers core NATS pub/sub, request/reply and queue groups, JetStream streams and consumers (pull and push, with explicit ack semantics), KeyValue and ObjectStore buckets, and the NATS microservices framework. Authentication works with user/password, tokens, JWT, NKeys or TLS certificates, and reconnection with exponential backoff is built in.
It is also the engine under idct/symfony-nats-messenger, so if you run Symfony Messenger on NATS, you are already using it.
ℹ️What is NATS? NATS is an open-source, high-performance messaging system for connecting services, devices and applications. At its core it is a lightweight publish/subscribe broker: a single small binary, a simple yet powerful protocol and latency measured in microseconds. JetStream is the persistence layer built into NATS. It adds streams that store messages durably, consumers with at-least-once or exactly-once delivery, replay from any point in time, and on top of that key-value and object storage. In practice it lets you replace a separate queue, cache and blob store with a single system.
🔗Repo: https://github.com/ideaconnect/php-nats-jetstream-client
If the library saves you time, you can support its development:
❤️GitHub Sponsors: https://github.com/sponsors/ideaconnect
☕Buy me a coffee: https://buymeacoffee.com/idct
