PHPackages                             infocyph/talkingbytes - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [HTTP &amp; Networking](/categories/http)
4. /
5. infocyph/talkingbytes

ActiveLibrary[HTTP &amp; Networking](/categories/http)

infocyph/talkingbytes
=====================

Protocol-focused communication toolkit for PHP.

2.0.0(2w ago)11.4k↑33420%2MITPHPPHP &gt;=8.4CI passing

Since Jul 10Pushed 2w ago1 watchersCompare

[ Source](https://github.com/infocyph/TalkingBytes)[ Packagist](https://packagist.org/packages/infocyph/talkingbytes)[ RSS](/packages/infocyph-talkingbytes/feed)WikiDiscussions main Synced 1w ago

READMEChangelogDependencies (2)Versions (7)Used By (2)

TalkingBytes
============

[](#talkingbytes)

[![Security & Standards](https://github.com/infocyph/TalkingBytes/actions/workflows/security-standards.yml/badge.svg)](https://github.com/infocyph/TalkingBytes/actions/workflows/security-standards.yml)[![Packagist Downloads](https://camo.githubusercontent.com/1b418dec948ce4894cd9aeb2f51c762c89fdea756737b9fae566ebe5866dca2e/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f696e666f637970682f54616c6b696e6742797465733f636f6c6f723d677265656e266c696e6b3d68747470732533412532462532467061636b61676973742e6f72672532467061636b61676573253246696e666f6379706825324654616c6b696e674279746573)](https://camo.githubusercontent.com/1b418dec948ce4894cd9aeb2f51c762c89fdea756737b9fae566ebe5866dca2e/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f696e666f637970682f54616c6b696e6742797465733f636f6c6f723d677265656e266c696e6b3d68747470732533412532462532467061636b61676973742e6f72672532467061636b61676573253246696e666f6379706825324654616c6b696e674279746573)[![License: MIT](https://camo.githubusercontent.com/784362b26e4b3546254f1893e778ba64616e362bd6ac791991d2c9e880a3a64e/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f4c6963656e73652d4d49542d677265656e2e737667)](https://opensource.org/licenses/MIT)[![Packagist Version](https://camo.githubusercontent.com/1532a7e87c2264bd8a0db19bf2f5b2e07e4074701da3cecce24e93abd22f9023/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f696e666f637970682f54616c6b696e674279746573)](https://camo.githubusercontent.com/1532a7e87c2264bd8a0db19bf2f5b2e07e4074701da3cecce24e93abd22f9023/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f696e666f637970682f54616c6b696e674279746573)[![Packagist PHP Version](https://camo.githubusercontent.com/1b22156d4eff78f8cac975b260045ec5d1b84f5d54079bf8ee93c1611344e0ef/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f646570656e64656e63792d762f696e666f637970682f54616c6b696e6742797465732f706870)](https://camo.githubusercontent.com/1b22156d4eff78f8cac975b260045ec5d1b84f5d54079bf8ee93c1611344e0ef/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f646570656e64656e63792d762f696e666f637970682f54616c6b696e6742797465732f706870)[![GitHub Code Size](https://camo.githubusercontent.com/ef10373758881979faac5b52251a1ed7ee8ebcf3a4c06a59f2f87b7398922887/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6c616e6775616765732f636f64652d73697a652f696e666f637970682f54616c6b696e674279746573)](https://camo.githubusercontent.com/ef10373758881979faac5b52251a1ed7ee8ebcf3a4c06a59f2f87b7398922887/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6c616e6775616765732f636f64652d73697a652f696e666f637970682f54616c6b696e674279746573)[![Documentation](https://camo.githubusercontent.com/e71d37ff14f4fb98fb50a3b0e64c15261186e94beda7bcb502f39a99f8d23c68/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f446f63756d656e746174696f6e2d54616c6b696e6742797465732d626c75653f6c6f676f3d72656164746865646f6373266c6f676f436f6c6f723d7768697465)](https://docs.infocyph.com/projects/TalkingBytes)

Protocol-focused communication toolkit for PHP.

TalkingBytes provides typed HTTP and gRPC pipelines, shared result/event primitives, and protocol modules for:

- Email (SMTP/sendmail/mail/spool + IMAP/POP3/parser)
- HTTP (cURL + cURL multi)
- Webhook (sign/verify/replay)
- gRPC (adapter + retry + fake caller)

Install
-------

[](#install)

```
composer require infocyph/talkingbytes
```

Requirements:

- PHP `^8.4`
- `ext-curl`
- `ext-fileinfo`
- `ext-openssl`

Quick Start
-----------

[](#quick-start)

### HTTP

[](#http)

```
use Infocyph\TalkingBytes\Http\HttpClient;

$result = HttpClient::curl()
    ->withBearerToken($token)
    ->timeout(10)
    ->postJson('https://api.example.com/orders', [
        'order_id' => 1001,
        'amount' => 500,
    ]);

if ($result->successful) {
    $data = $result->response->json();
}
```

### Email

[](#email)

```
use Infocyph\TalkingBytes\Email\Email;
use Infocyph\TalkingBytes\Email\EmailMessage;

$result = Email::sender()->usingNull()->send(
    EmailMessage::new()
        ->from('sender@example.com')
        ->to('user@example.com')
        ->subject('Hello')
        ->text('Hello from TalkingBytes')
);
```

### Webhook

[](#webhook)

```
use Infocyph\TalkingBytes\Webhook\Webhook;
use Infocyph\TalkingBytes\Webhook\WebhookMessage;

$delivery = Webhook::sender($httpClient)
    ->withSecret('whsec_test')
    ->send(
        WebhookMessage::event('order.created')
            ->url('https://merchant.example.com/webhook')
            ->payload(['order_id' => 1001])
    );
```

### gRPC

[](#grpc)

```
use Infocyph\TalkingBytes\Grpc\GrpcClient;
use Infocyph\TalkingBytes\Grpc\Receiver\GrpcInboundRequest;
use Infocyph\TalkingBytes\Grpc\Receiver\GrpcInboundResponse;
use Infocyph\TalkingBytes\Grpc\Sender\GrpcRequest;
use Infocyph\TalkingBytes\Grpc\Sender\GrpcResponse;
use Infocyph\TalkingBytes\Grpc\GrpcInboundDispatcher;
use Infocyph\TalkingBytes\Grpc\GrpcStatus;

$client = GrpcClient::using(
    static fn (GrpcRequest $request): GrpcResponse =>
        new GrpcResponse(GrpcStatus::Ok, ['ok' => true, 'echo' => $request->message]),
);

$result = $client->send(new GrpcRequest('/orders.v1.OrderService/Create', [
    'order_id' => 1001,
]));

$server = GrpcInboundDispatcher::new()->withHandler(
    '/orders.v1.OrderService/Create',
    static fn (GrpcInboundRequest $request): GrpcInboundResponse =>
        GrpcInboundResponse::ok(['received' => $request->message]),
);
```

Security
--------

[](#security)

Do not disclose suspected vulnerabilities in a public issue, discussion or pull request. Follow [SECURITY.md](SECURITY.md) and use [GitHub private vulnerability reporting](https://github.com/infocyph/TalkingBytes/security/advisories/new).

TalkingBytes is protected by [PHPForge](https://github.com/infocyph/PHPForge), which provides automated tests, static and taint analysis, dependency auditing, architecture checks and release-readiness gates. Automated controls do not replace responsible disclosure or manual review.

---

 **Made with ❤️ for the PHP community**
 [MIT Licensed](LICENSE)
 [Documentation](https://docs.infocyph.com/projects/TalkingBytes/) • [Security](SECURITY.md) • [Code of Conduct](CODE_OF_CONDUCT.md) • [Contributing](CONTRIBUTING.md)
 🗂️ [Bug](https://github.com/infocyph/TalkingBytes/issues/new?template=bug_report.yml) • [Feature](https://github.com/infocyph/TalkingBytes/issues/new?template=feature_request.yml) • [Documentation](https://github.com/infocyph/TalkingBytes/issues/new?template=docs_improvement.yml) • [Question](https://github.com/infocyph/TalkingBytes/issues/new?template=question.yml) • [CI failure](https://github.com/infocyph/TalkingBytes/issues/new?template=ci_failure.yml)
 🔀 [General](https://github.com/infocyph/TalkingBytes/compare/main...HEAD?quick_pull=1&template=PULL_REQUEST_TEMPLATE.md) • [Bug fix](https://github.com/infocyph/TalkingBytes/compare/main...HEAD?quick_pull=1&template=bug_fix.md) • [Feature](https://github.com/infocyph/TalkingBytes/compare/main...HEAD?quick_pull=1&template=feature.md) • [Refactor](https://github.com/infocyph/TalkingBytes/compare/main...HEAD?quick_pull=1&template=refactor.md) • [Performance](https://github.com/infocyph/TalkingBytes/compare/main...HEAD?quick_pull=1&template=performance.md) • [Security &amp; reliability](https://github.com/infocyph/TalkingBytes/compare/main...HEAD?quick_pull=1&template=security_reliability.md) • [Documentation](https://github.com/infocyph/TalkingBytes/compare/main...HEAD?quick_pull=1&template=documentation.md) • [Maintenance](https://github.com/infocyph/TalkingBytes/compare/main...HEAD?quick_pull=1&template=maintenance.md)

###  Health Score

49

—

FairBetter than 94% of packages

Maintenance97

Actively maintained with recent releases

Popularity23

Limited adoption so far

Community12

Small or concentrated contributor base

Maturity55

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~8 days

Total

5

Last Release

14d ago

Major Versions

0.2 → 1.0.02026-07-30

1.0.0 → 2.0.02026-08-13

### Community

Maintainers

![](https://www.gravatar.com/avatar/33b750b84ab22f2038ef9b90ee48f2fcdaab6b5698e9f956a89a152466200b63?d=identicon)[abmmhasan](/maintainers/abmmhasan)

---

Top Contributors

[![abmmhasan](https://avatars.githubusercontent.com/u/7711128?v=4)](https://github.com/abmmhasan "abmmhasan (44 commits)")

---

Tags

httpcurlemailgRPCtransportwebhookapi clientsmtpcommunication

### Embed Badge

![Health badge](/badges/infocyph-talkingbytes/health.svg)

```
[![Health](https://phpackages.com/badges/infocyph-talkingbytes/health.svg)](https://phpackages.com/packages/infocyph-talkingbytes)
```

###  Alternatives

[rmccue/requests

A HTTP library written in PHP, for human beings.

3.6k38.1M290](/packages/rmccue-requests)[nategood/httpful

A Readable, Chainable, REST friendly, PHP HTTP Client

1.8k17.8M281](/packages/nategood-httpful)[mashape/unirest-php

Unirest PHP

1.3k10.2M166](/packages/mashape-unirest-php)[php-http/curl-client

PSR-18 and HTTPlug Async client with cURL

48350.2M498](/packages/php-http-curl-client)[smi2/phpclickhouse

PHP ClickHouse Client

85112.2M85](/packages/smi2-phpclickhouse)[jbzoo/utils

Collection of PHP functions, mini classes and snippets for everyday developer's routine life.

8311.6M50](/packages/jbzoo-utils)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
