NOTE: Projects labelled with emoji 🌐 have their documentation written in non-English languages.
- hyperf/jet - An RPC Client with built-in support for the JSON-RPC protocol. It works with both PHP-FPM and Swoole.
- hyperf/consul - The Consul client of Hyperf.
- hyperf/elasticsearch - The Elasticsearch client of Hyperf.
- hyperf/etcd - The etcd client of Hyperf.
- simps/mqtt - A coroutine-based MQTT client. It supports MQTT version 3.1, 3.1.1, and 5.0.
- swoole/ext-postgresql - A Swoole-based PostgreSQL client.
- swoole/ext-zookeeper - A Swoole-based ZooKeeper client. 🌐
- hyperf/crontab - The cron component of Hyperf, allowing jobs to run at intervals of seconds.
- osgochina/swoole-crontab - A Swoole-based crontab schedule. It allows jobs to run at intervals of seconds, and is fully compatible with crontab syntax. 🌐
- hyperf/database - The database component of Hyperf.
- mix/database - A Swoole-based database component, with built-in support for connection pool. 🌐
- mix/redis - A Swoole-based Redis component, with built-in support for connection pool. 🌐
- mix/redis-subscriber - A Swoole-based Redis subscription component. 🌐
- open-smf/connection-pool - A common connection pool based on Swoole.
- simple-swoole/db - The database component of Simps. This component is built on top of the Swoole Library.
- SMProxy - SMProxy (Swoole MySQL Proxy), A MySQL database connection pool library. 🌐
- SkyAPM PHP - The PHP instrument agent for Apache SkyWalking.
- Swoole Tracker - An online service to track and analyze the performances of PHP/Swoole applications. Key features include memory leak detection, performance analytics, and runtime stats. Chinese version only. 🌐
- swoole/debugger - A remote debugger of Swoole. By adding one-line of code, you can debug your application remotely using a rich list of commands. 🌐
- upscale/swoole-blackfire - Blackfire profiler integration for Swoole web-server.
- yasd - Yet Another Swoole Debugger, developed by codinghuang from the Swoole team.
- Docker
- phpswoole/swoole - Official Docker image of Swoole.
- IDE Helper
- eaglewu/swoole-ide-helper - Auto completion, trigger suggest and view docs for Swoole in editor.
- Swoole IDE Helper - Swoole IDE Helper for PhpStorm and Intellij IDEA. Thanks to Luhur Abdi (Abi) Rizal for maintaining it.
- swoole/ide-helper - IDE help files to provide accurate autocompletion for Swoole.
- static-php-cli - Build static PHP binary in Linux, with Swoole and other popular extensions included. 🌐
- chubbyphp-framework: A minimal middleware based micro framework using PSR, with the goal is to achive the best combination of flexibility and simplicity by using standards.
- Hyperf - A coroutine framework that focuses on hyperspeed and flexibility.
- Official components (an incomplete list)
- Third-party components (an incomplete list)
- 96qbhy/hyperf-auth - An authentication component for Hyperf. It supports JWT and session-based authentications. You can also create your own authentication drivers if needed.
- reasno/fastmongo - A coroutine-based MongoDB client for Hyperf.
- Nano - A Hyperf-based coroutine microframework.
- imi - A Swoole-based framework, with built-in support for HTTP/1, HTTP/2, WebSocket, TCP, UDP, and MQTT. 🌐
- Laminas/Mezzio/Zend Framework
- mezzio/mezzio-swoole - Provides the support of Swoole into a Mezzio application.
- Siler - A set of general purpose high-level abstractions aiming an API for declarative programming in PHP.
- lizhichao/one - A simple and efficient framework that works both under PHP-FPM and Swoole.
- Mix PHP - A unique single-threaded coroutine-based framework. 🌐
- Official modules (an incomplete list)
- Polyel - A full-stack MVC PHP framework/server built from the ground up based on Swoole.
- QueryPHP - A modern, high performance PHP progressive coroutine framework. 🌐
- Simps - A simple, lightweight and high-performance PHP coroutine framework.
- Ubiquity - A powerful and fast framework for efficient design.
To run PHP/PHP-FPM frameworks using Swoole.
- PHP Runtimes - A home for runtimes, where people can easily create a
Runtime
to run an application with Bref, Swoole or ReactPHP without making any change to the application itself. - Laravel
- Laravel Octane - A first-party Laravel package that supercharges laravelish application's performance by serving it using Swoole high-performance HTTP servers. Developed and maintained by the Laravel team.
- hhxsv5/laravel-s - Glue for using Swoole in Laravel or Lumen.
- huang-yi/shadowfax - Runs your Laravel application on Swoole.
- scil/laravel-fly - To be an absolutely safe solution to speed up Laravel with Swoole. Preloading + Coroutine and Tinker Online.
- swooletw/laravel-swoole - A high-performance HTTP server to run Laravel/Lumen application on top of Swoole.
- toxmc/fast-laravel - A Swoole-based high-performance HTTP server to speed up your Laravel applications. 🌐
- Phalcon
- phwoolcon/phwoolcon - Phalcon + Swoole.
- Slim
- pachico/Slim-Swoole - A convenient library to run SlimPHP applications with Swoole.
- Symfony
- symfony/runtime - The Runtime component decouples the bootstrapping logic from any global state to make sure the application can run with runtimes like PHP-FPM, ReactPHP, Swoole, etc. without any changes. For a more generic implementation that works with other frameworks/environments, please check project PHP Runtimes.
- k911/swoole-bundle - Symfony integration with Swoole to speed up your applications.
- ThinkPHP
- topthink/think-swoole - To run ThinkPHP applications with Swoole. 🌐
- Yii
- liufee/yii2-swoole - To run Yii 2 applications with Swoole. 🌐
- Utopia
- Utopia Swoole - An extension for Utopia Framework to work with PHP Swoole as a PHP FPM alternative.
- hyperf/grpc-client - The gRPC client component of Hyperf.
- hyperf/grpc-server - The gRPC server component of Hyperf.
- mix/grpc - A gRPC implementation based on Swoole. Protoc code generator, server, client, and more features included. 🌐
- swoole/grpc - An efficient Swoole-based gRPC client. 🌐
Libraries for working with HTTP.
- PSR Compliance
- chubbyphp/chubbyphp-swoole-request-handler - A request handler adapter for Swoole, using PSR-7, PSR-15 and PSR-17.
- leocavalcante/request-callback - Swoole request callback for PSR compliant handlers. Compatible with PSR-7 and PSR-15.
- fastd/http - A PSR-7-compatible HTTP component, with built-in support for Swoole HTTP server. 🌐
- Saber - A coroutine-based HTTP client. 🌐
- Yurunsoft/Guzzle-Swoole - Make the Guzzle library coroutine-friendly in Swoole. It works with many Guzzle-based packages and Swoole-based frameworks. 🌐
- Yurunsoft/YurunHttp - An easy-to-use HTTP client that works with HTTP/1, HTTP/2, and WebSocket protocols. It also supports chained operations, concurrent processing, and connection pool. 🌐
- hyperf/logger - The logging component of Hyperf. It's based on Monolog, with PSR-3 interface implemented.
- mix/monolog - A coroutine-friendly logging library. It's based on Monolog. 🌐
- upscale/swoole-newrelic - New Relic APM and Browser monitoring of Swoole web-server.
- Swoole Runtime for AWS Lambda - λ Run PHP Coroutines & Fibers as-a-Service on the AWS Lambda.
- hyperf/tracer - The distributed tracing component of Hyperf. The implementation is based on OpenTracing.
- mix/tracing-zipkin - A tracing library based on Zipkin and OpenTracing. 🌐
- Archer - A Swoole-based task component, with different runtime modes supported: serial queue, concurrent queue, defer, timer, etc. 🌐
- hyperf/amqp - The AMQP client of Hyperf.
- hyperf/async-queue - The Redis-based asynchronous queue component of Hyperf.
- hyperf/task - The task component of Hyperf, providing an easy way to add and dispatch tasks to task workers in Swoole.
- kcloze/swoole-jobs - An efficient Swoole-based job queue system. 🌐
- littlesqx/aint-queue - An async-queue library built on top of Swoole.
- longlang/phpkafka - A coroutine-based Kafka client.
- deminy/counit - To run time/IO related unit tests (e.g., sleep function calls, database queries, API calls, etc) faster using Swoole.
- yansongda/pay - A payment SDK for Alipay and WeChat Pay, with components to integrate with Hyperf, Laravel, and Yii. 🌐
- Yurunsoft/PaySDK - A coroutine-friendly payment SDK for Alipay and WeChat Pay. 🌐
- Yurunsoft/YurunOAuthLogin - An OAuth library that provides built-in support for QQ, WeChat, Weibo, Github, Gitee, etc. 🌐
- crowdstar/exponential-backoff - A library to prevent overloading an unavailable service by doubling the timeout each iteration. It works under both Swoole (in non-blocking mode) and PHP-FPM.
- k8s/client - A Kubernetes API client for PHP.
- leocavalcante/swoole-futures - Futures + Async/Await for PHP's Swoole asynchronous run-time.
- leocavalcante/swoole-mutex - Mutual exclusion abstractions for PHP's Swoole concurrency run-time.
- mix/sync-invoke - A library to execute synchronous blocking code without blocking the running process in Swoole. 🌐
- xlswriter - A coroutine-friendly PHP Extension to create and read XLSX files.
- yurun-crawler - A framework to build high-performance, distributed web crawler. 🌐
- swoole-utils - A collection of utilities for building concurrent applications with Swoole. #WIP
- Buggregator - A beautiful, lightweight debug server that helps you debug your app. Built with Laravel and Swoole.
Fantastic Swoole-related books.
- Mastering Swoole PHP - Build your high performance large scale concurrent system in a more flexible and efficient way than ever before with this first & only Swoole PHP book, with PHP 8 ready.
Fantastic Swoole-related videos.
- CSP Programming in PHP - An online talk presented by Demin on August 20, 2020. This talk gives an in depth explanation on the concurrency model used in Swoole. Here are the slides.
- Building High-Performance Application Servers with Swoole - A conference talk presented by Demin during PHPFest 2020. Here are the slides.
- Build an All-In-One Application Server Using Swoole - A conference talk presented by Demin during PHP Community Summit 2021. The talk starts at 20'55''. Here are the slides.
- deminy/swoole-by-examples - Learn Swoole by examples.
- swooletw/awesome-swoole - A curated list of Swoole.