PHPackages                             leocavalcante/swoole-irc-client - 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. [Utility &amp; Helpers](/categories/utility)
4. /
5. leocavalcante/swoole-irc-client

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

leocavalcante/swoole-irc-client
===============================

Swoole based IRC (Internet Relay Chat) Client

v0.1.0(5y ago)144MITPHPPHP &gt;=7.4

Since Oct 14Pushed 5y agoCompare

[ Source](https://github.com/leocavalcante/swoole-irc-client)[ Packagist](https://packagist.org/packages/leocavalcante/swoole-irc-client)[ RSS](/packages/leocavalcante-swoole-irc-client/feed)WikiDiscussions main Synced today

READMEChangelog (1)Dependencies (4)Versions (2)Used By (0)

Swoole IRC Client
=================

[](#swoole-irc-client)

💬 [Swoole](https://www.swoole.co.uk/) based [IRC (Internet Relay Chat)](https://tools.ietf.org/html/rfc1459) Client.

Installation
------------

[](#installation)

```
composer require leocavalcante/swoole-irc-client
```

Usage
-----

[](#usage)

```
use SwooleIrc\{HandlerInterface, Reply, Client};

class MyHandler implements HandlerInterface {
    public function onConnect(Client $irc): void {}
    public function onReply(Reply $reply, Client $irc): void {}
}

$irc = Client::withHandler(new MyHandler());
$irc->connect($host, $port);
$irc->start();
```

### CallbackHandler

[](#callbackhandler)

This library provides a convenient way to pass a regular callable as well if you don't want to create a class and implement an interface.

```
use SwooleIrc\{Reply, Client, CallbackHandler};

$handler = static function (Reply $reply): void {};

$irc = Client::withHandler(CallbackHandler::reply($handler))
    ->connect($host, $port)
    ->start();
```

#### Examples

[](#examples)

- [Twitch.tv Chatbot](https://github.com/leocavalcante/swoole-irc-client/tree/main/examples/twitch)
- [Freenode Chat CLI Client](https://github.com/leocavalcante/swoole-irc-client/tree/main/examples/freenode)

Commands
--------

[](#commands)

### PASS

[](#pass)

```
$irc->pass($password);
```

### NICK

[](#nick)

```
$irc->nick($nickname);
```

### JOIN

[](#join)

```
$irc->join([$channel]);
$irc->join([$channel], [$key]);
```

### PART

[](#part)

```
$irc->part([$channel]);
```

### PRIVMSG

[](#privmsg)

```
$irc->privmsg([$channel], $text);
```

---

Please, for now, take a look at the source code to see all supported commands.

And you can always implement `MessageInterface` to send your own messages thought `$irc->send(MessageInterface $message)`or send raw lines with `$irc->writeln(string $raw)`.

###  Health Score

22

—

LowBetter than 21% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity10

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity45

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

Unknown

Total

1

Last Release

2132d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/183722?v=4)[Leo Cavalcante](/maintainers/leocavalcante)[@leocavalcante](https://github.com/leocavalcante)

---

Top Contributors

[![leocavalcante](https://avatars.githubusercontent.com/u/183722?v=4)](https://github.com/leocavalcante "leocavalcante (29 commits)")

---

Tags

hacktoberfestirc-clientswoole

###  Code Quality

TestsPest

### Embed Badge

![Health badge](/badges/leocavalcante-swoole-irc-client/health.svg)

```
[![Health](https://phpackages.com/badges/leocavalcante-swoole-irc-client/health.svg)](https://phpackages.com/packages/leocavalcante-swoole-irc-client)
```

###  Alternatives

[matomo/matomo

Matomo is the leading Free/Libre open analytics platform

21.7k39.6k](/packages/matomo-matomo)[google/cloud-core

Google Cloud PHP shared dependency, providing functionality useful to all components.

346137.0M126](/packages/google-cloud-core)[tempest/framework

The PHP framework that gets out of your way.

2.3k37.6k21](/packages/tempest-framework)[phpactor/phpactor

PHP refactoring and intellisense tool for text editors

1.9k17.9k1](/packages/phpactor-phpactor)[brianhenryie/strauss

Prefixes dependencies namespaces so they are unique to your plugin

192484.7k41](/packages/brianhenryie-strauss)

PHPackages © 2026

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