microsoft / vscode-dapr

A Visual Studio Code extension for Dapr development
Other
58 stars 18 forks source link

Add Rich Interaction UI #52

Open RichiCoder1 opened 4 years ago

RichiCoder1 commented 4 years ago

It would be great to be able to invoke & publish through a richer maybe Webview backed UI. It would be slightly nicer to work with and may things like request bodies and formatting responses much easier.

philliphoff commented 4 years ago

@RichiCoder1 This is excellent feedback. I, too, would like a better way to edit/select payload data. I think the question will be how to strike a middle ground between "better than a plain input box or quick-pick" that is the built-in, but extremely limiting, VS Code UX and a full-blown HTTP/JSON request editor web view that is already well done by other, external tools.

That might include avoiding the issue somewhat, and simply offer a convention for associating some chunk of JSON somewhere (e.g. workspace settings file, arbitrary file, etc.) with a method that we can then offer to send as a payload for a certain method.

I think we'll need to work with our PM @BigMorty and our UX team to see what they can come up with.

RichiCoder1 commented 4 years ago

I think the question will be how to strike a middle ground between "better than a plain input box or quick-pick" that is the built-in, but extremely limiting, VS Code UX and a full-blown HTTP/JSON request editor web view that is already well done by other, external tools.

Absolutely! Simple method/feed + body fields with formatting for responses was I was thinking. Very limited scope, though a postman/insomnia but for Dapr would be awesome.

That might include avoiding the issue somewhat, and simply offer a convention for associating some chunk of JSON somewhere (e.g. workspace settings file, arbitrary file, etc.) with a method that we can then offer to send as a payload for a certain method.

I think I heard this mentioned during the call. The postman-like ability to store & replay requests would be neat. Though that arguable borders on the functionality of what some other extensions/tools can already do.