[{"data":1,"prerenderedAt":265},["ShallowReactive",2],{"project-14578509":3},{"id":4,"name":5,"line":6,"line_source":7,"title":8,"url":9,"domain":5,"maker":10,"posted_at":11,"year":12,"points":13,"comments":14,"rank_in_year":15,"shown_in_year":16,"top":17,"tier":18,"category":19,"subcategory":20,"format":21,"keywords":22,"reception":27,"sentiment":28,"stance_mix":29,"scored_comments":34,"aspects":35,"strip":42,"post_text":44,"what":45,"said":81,"maker_in_thread":171,"shape":178,"grid":181,"attempts":226,"same_week":227,"maker_shows":194,"maker_hidden":257,"reader_version":258,"card":259},"14578509","bash.rocks","A bash interpreter in the browser","title","Show HN: bash.rocks – A bash interpreter in the browser","https:\u002F\u002Fbash.rocks\u002F","wsxiaoys",1497749108,2017,58,20,721,2242,33,"notable","dev_tools","online shell","web_app",[23,24,25,26],"bash online","browser shell","cloud bash","bash interpreter","roasted",-0.417,{"positive":30,"neutral":31,"mixed":32,"critical":33},0,5,1,6,12,{"execution":36,"design":37,"performance":38,"privacy":39,"idea":41},{"positive":30,"critical":32},{"positive":30,"critical":30},{"positive":30,"critical":30},{"positive":30,"critical":40},4,{"positive":30,"critical":32},[30,43,30,32,43,43,32,30,43,30,43,32,30,32,32,32,30,30,30,43],3,null,{"problem":46,"audience":44,"pricing":53,"motivation":57,"time_to_build":44,"stack":61,"openness":78,"stage":79,"team_size":80},{"value":47,"source":48,"evidence":49},"Running bash snippets with utilities like curl, Python, ImageMagick and jq without a local shell","maker",[50],{"id":51,"by":10,"text":52},"14578521","Hey HN, bash.rock is my latest side project, a bash interpreter in cloud, it comes with many utilities like curl, Python, ImageMagick, jq, etc. Below are some snippet I created:…",{"value":54,"source":48,"evidence":55},"Premium web service feature planned for future",[56],{"id":51,"by":10,"text":52},{"value":58,"source":48,"evidence":59},"Side project",[60],{"id":51,"by":10,"text":52},[62,68,74],{"value":63,"source":48,"evidence":64},"Google Cloud Functions",[65],{"id":66,"by":10,"text":67},"14578539","It's a Cloud Function running in Cloud, with customized node package dependencies (so I could pull stuff like jq, webp in). Thanks to a fully managed container environment, I…",{"value":69,"source":48,"evidence":70},"Node.js",[71],{"id":72,"by":10,"text":73},"14581618","Yes it's a cloud function, an isolated docker container running node.js",{"value":75,"source":48,"evidence":76},"Docker containers",[77],{"id":72,"by":10,"text":73},"unknown","beta","solo",{"praise":82,"objections":95,"requests":125,"questions":147,"alternatives":159},[83],{"value":84,"source":85,"evidence":86},"Interesting project and neat image integration","commenter",[87,91],{"id":88,"by":89,"text":90},"14578536","detaro","Very cool! The image integration is especially neat. What does the backend look like?",{"id":92,"by":93,"text":94},"14580523","icebraining","Seems like an interesting project! Unfortunately it doesn't show any output for me. I can see in the network inspector that the GET to \u002Fstdout returns the text, but it's not…",[96,111,118],{"value":97,"source":85,"evidence":98},"Security concerns about running arbitrary code and files being downloaded",[99,103,107],{"id":100,"by":101,"text":102},"14580921","polygot","Seems like a cool idea, but clicking on this link will immediately download a file to your computer: https:\u002F\u002Fbash.rocks\u002FKJKEk3 (it's just a snippet from \u002Fdev\u002Furandom, but it…",{"id":104,"by":105,"text":106},"14580818","fimdomeio","can someone explain me how can this exist without being a security nightmare? From what I saw it's on a read only filesystem which looks like a great idea but what else?",{"id":108,"by":109,"text":110},"14580613","e79","Does each session run in an isolated container? Because I wonder, what's stopping an attacker from exhausting system resources, messing with other users stuff, etc.?",{"value":112,"source":85,"evidence":113},"Slow execution because a container starts on demand",[114],{"id":115,"by":116,"text":117},"14581251","TylerJewell","Hey - founder & CEO of Codenvy, also project lead for Eclipse Che - a workspace server and cloud IDE. We have learned a little bit about what it takes to run environments in the…",{"value":119,"source":85,"evidence":120},"No practical use beyond existing local shell",[121],{"id":122,"by":123,"text":124},"14580865","ams6110","Neat, but what is the practical use? I already have a shell on my computer.",[126,133,140],{"value":127,"source":85,"evidence":128},"Interactive mode that runs lines as you press enter",[129],{"id":130,"by":131,"text":132},"14580717","c3RlcGhlbnI_","What would make it really powerful\u002Fuseful is toggle that switches the current source to an interactive mode that runs new lines as you press enter.",{"value":134,"source":85,"evidence":135},"WebAssembly-based in-browser execution",[136],{"id":137,"by":138,"text":139},"14581449","comex","I was hoping for WebAssembly - that is, a bash interpreter really running in the browser. Of course, that would be a lot more ambitious, since unless you wanted to be limited to…",{"value":141,"source":85,"evidence":142},"Fish shell support",[143],{"id":144,"by":145,"text":146},"14580862","fiatjaf","Can we get fish instead of bash?",[148,153],{"value":149,"source":85,"evidence":150},"How the backend isolates sessions and prevents resource exhaustion",[151,152],{"id":108,"by":109,"text":110},{"id":104,"by":105,"text":106},{"value":154,"source":85,"evidence":155},"Whether it is really bash or a full Linux environment",[156],{"id":157,"by":145,"text":158},"14580857","So it's not bash, but a full Linux (?) environment with bash as the shell and some programs installed by default.",[160,167],{"value":161,"source":85,"evidence":162},"cash, shelljs and vorpal for JavaScript shell emulation",[163],{"id":164,"by":165,"text":166},"14582419","tannhaeuser","For node.js, there's also cash [1], shelljs [2], and an initial bash syntax parser [3], which actually implement POSIX shell subsets in Javascript (unlike this project, which I…",{"value":168,"source":85,"evidence":169},"jslinux",[170],{"id":137,"by":138,"text":139},{"comments":31,"answered":40,"key":172},[173,174,175],{"id":51,"text":52},{"id":66,"text":67},{"id":176,"text":177},"14581547","Right now it is simply loading stdout \u002F stderr with iframe, sometimes content will be interpreted as binary flow so browser will tries to download it. I'll try fix this in next…",{"commenters":179,"max_depth":43,"maker_replies":31,"first_comment_mins":31,"lifespan_hours":180},15,29,[182,184,186,187,189,191,193,196,197,199,201,202,204,207,209,212,214,218,222,224],[51,30,30,183,10,32],"project\u002Fpositive\u002Fidea",[88,30,43,185,89,30],"maker\u002Fneutral\u002Fexecution",[66,30,30,185,10,32],[92,30,32,188,93,30],"project\u002Fcritical\u002Fexecution",[130,30,43,190,131,30],"project\u002Fneutral\u002Fdesign",[115,32,43,192,116,30],"maker\u002Fmixed\u002Fperformance",[100,194,32,195,101,30],2,"project\u002Fcritical\u002Fprivacy",[176,194,30,185,10,32],[157,43,43,198,145,30],"project\u002Fneutral\u002Fidea",[164,40,30,200,165,30],"other\u002Fneutral\u002Fnone",[137,31,43,198,138,30],[122,33,32,203,123,30],"project\u002Fcritical\u002Fidea",[205,33,30,206,10,32],"14581849","maker\u002Fneutral\u002Fidea",[104,208,32,195,105,30],7,[210,208,32,195,211,30],"14581825","tyingq",[108,213,32,195,109,30],8,[215,213,30,216,217,30],"14580677","commenter\u002Fcritical\u002Fprivacy","cygned",[219,213,30,220,221,30],"14584936","commenter\u002Fneutral\u002Fnone","cyphar",[72,213,30,223,10,32],"project\u002Fneutral\u002Fprivacy",[144,225,43,198,145,30],9,[],[228,233,238,243,248,253],{"id":229,"name":230,"points":231,"category":232},"14558582","Snips",372,"ai",{"id":234,"name":235,"points":236,"category":237},"14583882","Decaffeinate",361,"languages",{"id":239,"name":240,"points":241,"category":242},"14587669","rust-algorithms",320,"learning_science",{"id":244,"name":245,"points":246,"category":247},"14593906","Copyfish",292,"productivity",{"id":249,"name":250,"points":251,"category":252},"14597485","NBox",286,"security_privacy",{"id":254,"name":255,"points":256,"category":237},"14588333","html5-parser",169,false,"v2",{"id":260,"name":5,"line":6,"ai":257,"cat":19,"year":12,"points":13,"comments":14,"rec":27,"s":261,"top":17,"kw":262,"maker":10,"domain":5,"tier":18,"attempts":30,"strip":263,"url":9,"mix":264,"praise":84,"objection":97,"sub":20},14578509,-0.42,[23,24,25,26],"03013310303101110003",[30,31,32,33],1794036556392]