[{"data":1,"prerenderedAt":213},["ShallowReactive",2],{"project-25655737":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":35,"aspects":36,"strip":41,"post_text":43,"what":44,"said":71,"maker_in_thread":138,"shape":148,"grid":151,"attempts":175,"same_week":176,"maker_shows":33,"maker_hidden":205,"reader_version":206,"card":207},"25655737","Hurl","Run and test HTTP requests","title","Show HN: Hurl – Run and test HTTP requests","https:\u002F\u002Fhurl.dev","hurl.dev","jicea",1609921532,2021,32,11,1114,2533,44,"shown","dev_tools","http client","cli",[24,25,26,27,28],"http testing","curl alternative","api testing","continuous integration","http requests","mixed",0.133,{"positive":32,"neutral":33,"mixed":34,"critical":34},3,2,1,7,{"idea":37,"docs":39,"design":40},{"positive":32,"critical":38},0,{"positive":38,"critical":34},{"positive":38,"critical":38},[38,42,38,32,42,32,38,32,42,34,38],5,null,{"problem":45,"audience":52,"pricing":43,"motivation":56,"time_to_build":43,"stack":60,"openness":69,"stage":70,"team_size":69},{"value":46,"source":47,"evidence":48},"Writing integration tests for HTTP requests is hard to integrate in CI and unreliable with other solutions","maker",[49],{"id":50,"by":11,"text":51},"25655738","Hurl is a simple http client built on top of libcurl with Rust. It allows running http requests defined in a plain text format. It can be used to fetch data, or play a scenario…",{"value":53,"source":47,"evidence":54},"Devops and developers doing local dev and continuous integration",[55],{"id":50,"by":11,"text":51},{"value":57,"source":47,"evidence":58},"They wanted curl with the ability to add tests for integration testing",[59],{"id":50,"by":11,"text":51},[61,65],{"value":62,"source":47,"evidence":63},"Rust",[64],{"id":50,"by":11,"text":51},{"value":66,"source":47,"evidence":67},"libcurl",[68],{"id":50,"by":11,"text":51},"unknown","launched",{"praise":72,"objections":88,"requests":103,"questions":124,"alternatives":129},[73,81],{"value":74,"source":75,"evidence":76},"Useful and handy, reminiscent of hurl.it","commenter",[77],{"id":78,"by":79,"text":80},"25680397","taf2","I love it reminds of hurl.it - pretty sure it’s not online anymore due to abuse, but very handy.",{"value":82,"source":75,"evidence":83},"Looks really great and plaintext definitions are appealing",[84],{"id":85,"by":86,"text":87},"25658133","miccah","This looks really great. I like that everything is defined in plaintext, but is there a way to link in other files? It might help clear up some clutter for large payloads.…",[89,96],{"value":90,"source":75,"evidence":91},"Sample examples were hard to run successfully",[92],{"id":93,"by":94,"text":95},"25658316","bhargav","I suggest adding an interactive mode! Aside: I tried to go through the samples and was having trouble running them successfully.",{"value":97,"source":75,"evidence":98},"Typo in documentation menu bar",[99],{"id":100,"by":101,"text":102},"25659974","hstan4","Typo on the menu bar: “Man Page” instead of “Main Page”",[104,112,116,120],{"value":105,"source":75,"evidence":106},"Interactive mode",[107,108],{"id":93,"by":94,"text":95},{"id":109,"by":110,"text":111},"25658472","fabricereix","We are planning the possibility to stop between requests with an inspection mode. We would also love an ncurse interface, like mitmproxy.",{"value":113,"source":75,"evidence":114},"Link in other files or external file bodies",[115],{"id":85,"by":86,"text":87},{"value":117,"source":75,"evidence":118},"Environment variable support for secrets",[119],{"id":85,"by":86,"text":87},{"value":121,"source":75,"evidence":122},"ncurses interface like mitmproxy",[123],{"id":109,"by":110,"text":111},[125],{"value":126,"source":75,"evidence":127},"Is there a way to include other files?",[128],{"id":85,"by":86,"text":87},[130,134],{"value":131,"source":75,"evidence":132},"repost, a Rust HTTP tool for interactive use",[133],{"id":85,"by":86,"text":87},{"value":135,"source":75,"evidence":136},"hurl.it",[137],{"id":78,"by":79,"text":80},{"comments":139,"answered":34,"key":140},4,[141,142,145],{"id":50,"text":51},{"id":143,"text":144},"25658217","Thanks for the feedbacks! Looking at repost, I can see that there is definitely a place for an HTTP runner\u002Ftools that can do asserts on response. For your suggestions,…",{"id":146,"text":147},"25658373","Yes interactive mode is a must have. For the sample, maybe this is not obvious but you have to write the sample in a text file: $ vi test.hurl ``` GET…",{"commenters":149,"max_depth":139,"maker_replies":139,"first_comment_mins":38,"lifespan_hours":150},6,41,[152,154,156,158,161,162,164,166,169,170,172],[50,38,38,153,11,34],"project\u002Fneutral\u002Fidea",[85,38,42,155,86,38],"project\u002Fpositive\u002Fidea",[143,38,38,157,11,34],"maker\u002Fneutral\u002Fidea",[159,38,32,160,110,38],"25658326","project\u002Fneutral\u002Fdocs",[78,34,42,155,79,38],[93,33,32,163,94,38],"project\u002Fmixed\u002Fidea",[146,33,38,165,11,34],"maker\u002Fneutral\u002Fdocs",[167,33,32,168,94,38],"25658406","project\u002Fneutral\u002Fdesign",[109,33,42,155,110,38],[100,32,34,171,101,38],"project\u002Fcritical\u002Fdocs",[173,32,38,174,11,34],"25660015","commenter\u002Fneutral\u002Fdocs",[],[177,182,187,192,196,201],{"id":178,"name":179,"points":180,"category":181},"25634192","read.cv",938,"productivity",{"id":183,"name":184,"points":185,"category":186},"25614167","iceland-thermal",753,"creative",{"id":188,"name":189,"points":190,"category":191},"25627673","Lightspeed",452,"infrastructure",{"id":193,"name":194,"points":195,"category":181},"25644828","Unclack",279,{"id":197,"name":198,"points":199,"category":200},"25657198","Reslash",266,"consumer_social",{"id":202,"name":203,"points":204,"category":181},"25622095","OpenScan",200,false,"v2",{"id":208,"name":5,"line":6,"ai":205,"cat":20,"year":13,"points":14,"comments":15,"rec":29,"s":209,"top":18,"kw":210,"maker":11,"domain":10,"tier":19,"attempts":38,"strip":211,"url":9,"mix":212,"praise":74,"objection":90,"sub":21},25655737,0.13,[24,25,26,27,28],"05035303510",[32,33,34,34],1794036600911]