Built on Apollo
Buoy adds a bunch of features and automation on top of what Apollo already provides.

Easy to use
With Buoy it’s super easy to query your GraphQL-server.
The WatchQuery handles pagination, route changes and caching out of the box.
And by adding the @subscribe directive, Buoy will dynamically subscribe to model changes via GraphQL subscriptions.
Subscriptions
Buoy is fully compatible with Lighthouse subscriptions.
Since the subscriptions are driver-based, other standards can easily be implemented.


Middleware
In some cases it can be necessary to handle stuff globally, eg. authentication errors.
With Buoy middleware, you can manipulate the HTTP requests pre- & post-flight.
You can also manipulate all GraphQL operations and their variables before execution.