- How do I install nuwave/lighthouse-ws in a Laravel app?
- Installation follows the usual Composer flow: require nuwave/lighthouse-ws, let Laravel discover the service provider, and publish any package configuration. However, this is an archived 2018 package, so Composer will likely refuse to resolve its constraints against modern PHP and Laravel versions. Treat installation as a research exercise, not a production step.
- Is nuwave/lighthouse-ws compatible with Laravel 11 or Laravel 12?
- No. The last release was in May 2018, which places it in the Laravel 5.5 and 5.6 era and several Lighthouse major versions behind current releases. Its dependency constraints will almost certainly conflict with Laravel 11 or 12 and PHP 8.2 or newer. Do not plan a modern Laravel application around this package.
- Does nuwave/lighthouse-ws work with PHP 8.2?
- Almost certainly not. A 2018 release implies a PHP 7.0 to 7.2 floor and old framework contracts, so Composer resolution against PHP 8.2 is expected to fail. Even if you forced an install, you would be pinning your application to an end-of-life PHP line. That is a hard blocker for production use.
- What WebSocket protocol does nuwave/lighthouse-ws use?
- It was built in the era of Apollo's subscriptions-transport-ws protocol, which uses start, data, and stop frames. Modern GraphQL clients generally speak graphql-transport-ws with subscribe, next, complete, and ping/pong frames. Mixing the two can fail silently: connections establish but subscriptions never deliver data.
- Is nuwave/lighthouse-ws still maintained?
- No. The repository is archived, the last release was 2018-05-05, and it has only 12 stars. Archival means no security patches, no PHP 8 support, no framework-major compatibility work, and no responses to issues. The abandonment risk is realised on day one.
- Does Lighthouse support GraphQL subscriptions natively now?
- Yes. Subscription support has since moved into Lighthouse itself, which removes the main reason this package existed. For new work, evaluate Lighthouse's native @subscription directive rather than an archived third-party add-on. Check that the native support covers your public broadcast, private authenticated, and filtered payload use cases.
- Can I use nuwave/lighthouse-ws with Laravel Reverb or laravel-websockets?
- Be skeptical of driver claims. Reverb did not exist in 2018, yet the package description mentions it, which suggests retrofitted marketing copy or an unverifiable modification. The WebSocket layer it originally depended on, laravel-websockets, has itself been superseded by Reverb. Verify any such claim in a spike before trusting it.
- How do I migrate from nuwave/lighthouse-ws to native Lighthouse subscriptions?
- First confirm whether the package appears in any composer.json or composer.lock, because that determines whether this is an evaluation or a remediation. Then remove the package, move subscription definitions onto Lighthouse's native @subscription support, and align your broadcast backend and client protocol. Expect to update front-end clients to graphql-transport-ws if they still use the legacy protocol.
- What are alternatives to nuwave/lighthouse-ws for Laravel GraphQL subscriptions?
- Use Lighthouse's built-in subscription support with a broadcast backend such as self-hosted Laravel Reverb, Redis pub/sub, or Pusher SaaS. Pair that with clients that implement graphql-transport-ws. Each backend has different procurement, data-residency, and per-connection cost implications, so choose deliberately rather than inheriting a 2018 default.
- Is nuwave/lighthouse-ws safe for production?
- No. An archived package with no upstream fix path leaves you exposed to unpatched security issues and unmaintained transitive dependencies such as old Pusher SDKs and WebSocket libraries. There is also protocol drift and a real chance of silent subscription failures with modern clients. Use it as prior art to read, not as a dependency to ship.