Here's an overview of the most important features of WunderGraph.
Hooks are a way to customize the behavior of the API Gateway middleware. We've decided to make hooks as easy to use as possible. No extra service is required to use hooks, it's all TypeScript, everything is type safe.
When combining multiple APIs, it's inevitable to run into naming collisions, like two schemas define a user type. API Namespacing solves this problem.
Want to combine data from multiple APIs without writing any custom code? Cross-API Joins are a way to do that.
Sometimes, you're not able to use the real Origin during testing. You can use Type-Safe Mocking to mock the APIs you need.
WunderGraph is and will always be local first, No emulation required.
Nobody should build their own authentication system, it's only going to create problems and security risks.
WunderGraph generates smart clients that know if an operation requires authentication or not. That makes the client-side code a lot easier to reason about, and the user experience a lot better.
Need to securely inject the user ID or email into a GraphQL Operation? WunderGraph allows you to easily do that with claims injection.
We've got built in support for Role Based Access Control (RBAC), which integrates perfectly with your OpenID Connect Provider of choice.
Have you thought about implementing CSRF protection for mutations? With WunderGraph, it's enabled by default.
You cannot use HTTP-Layer caching for GraphQL, right? Well, with WunderGraph, this works out of the box.
At the core of WunderGraph is the GraphQL to JSON-RPC Compiler, making WunderGraph much more secure than other GraphQL tools and enabling a lot of features.
WunderGraph automatically revalidates content with ETags, no config required.
GraphQL Subscriptions are a nice way to keep your clients up to date with the latest data. WunderGraph supports Subscriptions out of the box, even if you're using Apollo Federation.
Your backend doesn't support Subscriptions? No problem, WunderGraph supports Live Queries out of the box, turning every API into a realtime API using server-side polling.
Why stop at the Gateway level if we can generate clients and SDKs as well? WunderGraph gives you an end-to-end solution, with type-safe clients and SDKs out of the box.
Input validation is important to build robust APIs. WunderGraph provides JSON Schema Validation out of the box.
In some cases, you simply want to access your database as easy as possible. WunderGraph provides a way to generate APIs for any database in seconds.
We've adopted a pattern from Next.js, allowing you to define Operations using a file-based approach.
Everything in WunderGraph is configurable as code, with TypeScript, instead of JSON or YAML.
Need file uploads without any hassle? Plug in your S3 compatible file storage of choice and WunderGraph handles the rest.
When APIs generated from your database are not enough, you can easily define your own GraphQL Resolvers, keeping clients decoupled from the generated APIs.