This document discusses using code generation to create a GraphQL API from GRPC services defined in Protobuf files. It proposes: 1. Parsing Protobuf and configuration files to normalize data about GRPC services and messages. 2. Using multiple plugins that each specialize in converting a data source (e.g. Protobuf, Swagger) into GraphQL definitions. 3. Generating GraphQL schema and resolver code from the normalized data using text templates, instead of heavy code generation tools like protoc-gen-gogoopsee. This approach aims to produce cleaner, more customizable and debuggable code generation by separating concerns between data preparation and code output.