GraphQL Manifold
Manifold is a Java compiler plugin, features include Metaprogramming
...Simply add the Manifold dependencies of your choosing to your existing project and begin taking advantage of them. Favor composition over inheritance. Use @link and @part for automatic interface implementation forwarding and delegation. Use the framework to gain direct, type-safe access to any type of resource, such as GraphQL, JSON, XML, YAML, CSV, and even other languages such as JavaScript. Remove the code gen step in your build process. Use types defined in .graphql files directly, no code gen steps! Make GraphQL changes and immediately use them with code completion.