community-plugins icon indicating copy to clipboard operation
community-plugins copied to clipboard

[Plugin] gRPC UI

Open savannanoh opened this issue 5 years ago • 10 comments

Summary

This plugin would be similar to the current GraphiQL plugin, but it would be for gRPC instead. I am currently working on it for my own usage, but I'd love to share it with the rest of the community as well! (I don't seem to be able to assign myself to this issue, but I would if I could.)

Project website (if applicable)

Here is the documentation for gRPC, which this plugin would be using. I will add other links soon, potentially to the libraries I will use.

Context

Backstage is a really well-made platform with good infrastructure. Since the GraphiQL plugin already exists (and looks great), making the gRPC plugin shouldn't be too difficult.

savannanoh avatar Jul 17 '20 23:07 savannanoh

Welcome to the community! Would be great if you could elaborate or share some ideas about this plugin.

soapraj avatar Jul 18 '20 20:07 soapraj

How would this work? I think it would be really cool to have a tool to explore gRPC services, perhaps even integrating things like "bloomrpc" to send test queries. Perhaps the simplest first step would be something to take proto files and have a nice way to display them.

I'm not aware of code that actually exists, but a quick search shows this example: https://chromium.googlesource.com/external/github.com/grpc/grpc-go/+/HEAD/Documentation/server-reflection-tutorial.md I think this would be useful with or without backstage.

cgthayer avatar Sep 11 '20 18:09 cgthayer

Any progress on this one? I found this tool (https://github.com/pseudomuto/protoc-gen-doc) to, among other things, generate static html documentation for protocol buffers. It would be a great first step to be able to generate and structure protocol buffer docs within backstage similar to this.

kaspernissen avatar Nov 19 '20 10:11 kaspernissen

Hello! I'm sorry I haven't been keeping up with this project and it'd be great if it could be taken over by someone else!

savannanoh avatar Nov 24 '20 00:11 savannanoh

OK - unassigned for now then, welcome back at another time!

freben avatar Nov 24 '20 07:11 freben

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

stale[bot] avatar Mar 29 '21 11:03 stale[bot]

Re-opening since plugin suggestion issues are now exempt from stalebot.

OrkoHunter avatar Apr 13 '21 07:04 OrkoHunter

This is something we may be looking at in the nearish future

Right now I'm focusing on getting protobuf/grpc documentation into Backstage, and we actually use protoc-gen-doc internally to create documentation during CI/CD ( https://github.com/backstage/community-plugins/issues/255).

We are also potentially considering a gRPC Playground/explorer plugin which fits more in line with this specific plugin idea

However, if anyone has already done any work on this topic it would be great to hear more about it!

jrusso1020 avatar Jul 19 '21 17:07 jrusso1020

This seems like a reasonable target to integrate for gRPC documentation. It leverages protoc-gen-docs to output a json file, then a React component is used to display that. The "workflow" would be similar to the OpenAPI state of things which isn't the case today (most gRPC protocols span multiple files which makes displaying the definition in backstage not very useful, since it's limited to a single file).

They have their own hosting solution, but the "self-hosted" version seems like a reasonable target to integrate in backstage (though perhaps as a specific api type, like grpc-gendocu or similar)

plaflamme avatar Jan 12 '22 18:01 plaflamme

guys! We've opensourced grpc playground and docs for backstage here https://github.com/zalopay-oss/backstage-grpc-playground , please give a try and contribute to improve. Thank!

whatvn avatar Jun 06 '22 04:06 whatvn

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

github-actions[bot] avatar Sep 08 '24 06:09 github-actions[bot]