Skip to content

Add Websocket Support in FrankenPHP #1888

@davidnurdin

Description

@davidnurdin

Describe your feature request

Is your feature request related to a problem? Please describe.
The problem is that FrankenPHP does not provide a built-in solution for WebSockets. Mercure (SSE) is not full-duplex, so it cannot fully replace WebSockets for real-time, bidirectional communication.

Describe the solution you'd like
A native WebSocket implementation for FrankenPHP, ideally leveraging the new ability to create Go extensions. Similar to how it can be done in Go (as described here: Implementing WebSockets in Golang
), such an integration would be very powerful. By relying on Go’s goroutines, FrankenPHP could provide a highly performant WebSocket server, seamlessly integrable with Symfony, without requiring additional frameworks like Swoole or ReactPHP.

Describe alternatives you've considered

Using Mercure (SSE), but it is not full-duplex and does not provide the same capabilities as WebSockets.

Relying on external solutions like Swoole or ReactPHP, but these add complexity and external dependencies instead of leveraging FrankenPHP’s built-in Go extension support.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions