[{"data":1,"prerenderedAt":202},["ShallowReactive",2],{"project-34866155":3},{"id":4,"name":5,"line":6,"line_source":7,"title":8,"url":9,"domain":10,"maker":11,"posted_at":12,"year":13,"points":14,"comments":15,"rank_in_year":16,"shown_in_year":17,"top":18,"tier":19,"category":20,"subcategory":21,"format":22,"keywords":23,"reception":29,"sentiment":30,"stance_mix":31,"scored_comments":33,"aspects":34,"strip":36,"post_text":30,"what":38,"said":58,"maker_in_thread":123,"shape":125,"grid":130,"attempts":166,"same_week":167,"maker_shows":37,"maker_hidden":195,"reader_version":196,"card":197},"34866155","ProtoCURL","A curl for Protobuf","title","Show HN: ProtoCURL, a curl for Protobuf","https:\u002F\u002Fgithub.com\u002Fqaware\u002Fprotocurl","github.com","vlowrian",1676881110,2023,98,15,663,3109,22,"notable","dev_tools","command line tool","cli",[24,25,26,27,28],"protobuf","curl","http","binary payload","api client","quiet",null,{"positive":32,"neutral":33,"mixed":32,"critical":32},0,2,{"idea":35},{"positive":32,"critical":32},[37,32,37,32,32,32,32,32,32,32,32,32,32,32,32],3,{"problem":39,"audience":51,"pricing":30,"motivation":30,"time_to_build":30,"stack":56,"openness":57,"stage":57,"team_size":57},{"value":40,"source":41,"evidence":42},"Calling REST HTTP endpoints whose request and response bodies are binary Protobuf","commenter",[43,47],{"id":44,"by":45,"text":46},"34870128","dsies","If you have a gRPC service, you'd use `grpcurl`. This one is for RESTish HTTP 1 API's where the req\u002Fresp body is protobuf - something that `grpcurl` can't handle. In other words,…",{"id":48,"by":49,"text":50},"34867189","codetrotter","I’ve used a similar tool a bit that did what I needed. gRPCurl, Like cURL, but for gRPC: Command-line tool for interacting with gRPC servers…",{"value":52,"source":53,"evidence":54},"Developers working with Protobuf over HTTP APIs","inferred",[55],{"id":44,"by":45,"text":46},[],"unknown",{"praise":59,"objections":65,"requests":70,"questions":78,"alternatives":86},[60],{"value":61,"source":41,"evidence":62},"Useful for Protobuf over plain HTTP where grpcurl does not apply",[63,64],{"id":48,"by":49,"text":50},{"id":44,"by":45,"text":46},[66],{"value":67,"source":41,"evidence":68},"Niche use case; grpcurl covers gRPC services",[69],{"id":44,"by":45,"text":46},[71],{"value":72,"source":41,"evidence":73},"Schema registry and automatic schema detection for Protobuf payloads",[74],{"id":75,"by":76,"text":77},"34867199","ithkuil","nice. A lot of the problems people have with protobuf are down to deficiency in the opensource tooling. For example, I miss an easy way to stuff all my (and my team's) protobufs…",[79],{"value":80,"source":41,"evidence":81},"Does it offer more than gRPC reflection for introspection",[82],{"id":83,"by":84,"text":85},"34871873","lopkeny12ko","This just sounds like gRPC reflection. Was it more comprehensive than that?",[87,92,99,109,116],{"value":88,"source":41,"evidence":89},"grpcurl",[90,91],{"id":48,"by":49,"text":50},{"id":44,"by":45,"text":46},{"value":93,"source":41,"evidence":94},"grpcui",[95],{"id":96,"by":97,"text":98},"34869313","RutZap","Pretty cool, but if you like a gui, I'd highly recommend https:\u002F\u002Fgithub.com\u002Ffullstorydev\u002Fgrpcui, lightweight and super easy to use",{"value":100,"source":41,"evidence":101},"Buf and buf curl",[102,106],{"id":103,"by":104,"text":105},"34867462","joaosoares","Our team has been using Buf (https:\u002F\u002Fbuf.build) recently, and they have a nice solution for schema dependency management.",{"id":107,"by":76,"text":108},"34992449","But has a registry and has a tool to use the regiatry to call grpc https:\u002F\u002Fbuf.build\u002Fblog\u002Fbuf-curl\u002F Didn't dig deeper to see if the bud tooling can help me deciding protobufs…",{"value":110,"source":41,"evidence":111},"protoc encode and decode",[112],{"id":113,"by":114,"text":115},"34868845","fisian","I used `protoc --encode` (and `--decode`) to do something similar. Didn't send it over HTTP but piped it to MQTT or serial ports. Unfortunately, those options are poorly…",{"value":117,"source":41,"evidence":118},"mitmproxy",[119],{"id":120,"by":121,"text":122},"34870174","cjbprime","mitmproxy also has some nice tools for working with raw protobufs.",{"comments":32,"answered":32,"key":124},[],{"commenters":126,"max_depth":127,"maker_replies":32,"first_comment_mins":128,"lifespan_hours":129},13,4,199,238,[131,135,137,140,142,144,145,146,149,152,153,156,158,160,164],[132,32,37,133,134,32],"34870361","project\u002Fneutral\u002Fidea","kevincox",[83,32,32,136,84,32],"commenter\u002Fneutral\u002Fnone",[48,138,37,139,49,32],1,"project\u002Fneutral\u002Fnone",[44,138,32,141,45,32],"commenter\u002Fneutral\u002Fidea",[96,33,32,143,97,32],"other\u002Fneutral\u002Fnone",[75,37,32,143,76,32],[103,37,32,143,104,32],[147,37,32,143,148,32],"34867485","dewey",[150,37,32,143,151,32],"34869815","avinassh",[107,37,32,143,76,32],[154,37,32,141,155,32],"34871228","86J8oyZv",[113,127,32,157,114,32],"other\u002Fneutral\u002Fdocs",[159,127,32,143,45,32],"34870139",[161,162,32,143,163,32],"34868754",5,"2h",[120,165,32,143,121,32],6,[],[168,172,177,181,186,190],{"id":169,"name":170,"points":171,"category":20},"34869244","PyGWalker",712,{"id":173,"name":174,"points":175,"category":176},"34897773","AskHN",612,"ai",{"id":178,"name":179,"points":180,"category":20},"34897645","highlight.io",408,{"id":182,"name":183,"points":184,"category":185},"34826085","Basement Community",373,"consumer_social",{"id":187,"name":188,"points":189,"category":20},"34848583","Noya",285,{"id":191,"name":192,"points":193,"category":194},"34881286","Yobulk",233,"data",false,"v2",{"id":198,"name":5,"line":6,"ai":195,"cat":20,"year":13,"points":14,"comments":15,"rec":29,"s":30,"top":18,"kw":199,"maker":11,"domain":10,"tier":19,"attempts":32,"strip":200,"url":9,"mix":201,"praise":61,"objection":67,"sub":21},34866155,[24,25,26,27,28],"303000000000000",[32,33,32,32],1793991060627]