12
I’m working on ZealPHP, an MIT-licensed open-source PHP runtime framework built on OpenSwoole.
The BIG question, Why??? https://php.zeal.ninja/why-zealphp
The idea is to keep the simple Apache/LAMP-style PHP mental model, but modernise the runtime. For 25 years, HTTP server was in C. What if PHP runs the server?
PHP can serve normal pages, handle HTTP routes, hold WebSocket connections, stream SSE responses, manage sessions, use shared memory, run timers, and execute task workers from one long-running application server.
Greenfield apps are working great so far.
For legacy/traditional PHP code, the migration model I’m exploring is:
OpenSwoole front-of-house, PHP-FPM-style back-of-house for legacy code, and a coroutine-native path for new code.
Three lanes, one server.
The hope is that many traditional PHP apps can get a first async/runtime path without a rewrite, then move route-by-route into coroutine-native code.
I’m still asking myself if I’m laying the right foundations or building a beautiful monster :)
I also made a handcrafted Learn section where you build small apps step by step:
Personal Notes + AI Chat
Multiplayer Tic-Tac-Toe
Multi-Room WebSocket Chat
Cross-server chat with Redis
GitHub: https://github.com/sibidharan/zealphp
After feedback from senior PHP devs, I tightened the framework core and it now passes PHPStan level 10.
Still alpha. Actively developing.
Looking for feedback from PHP, OSS and runtime folks.
Built with