[{"data":1,"prerenderedAt":207},["ShallowReactive",2],{"project-3419840":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":28,"sentiment":29,"stance_mix":30,"scored_comments":35,"aspects":36,"strip":41,"post_text":44,"what":45,"said":55,"maker_in_thread":119,"shape":127,"grid":131,"attempts":169,"same_week":170,"maker_shows":34,"maker_hidden":199,"reader_version":200,"card":201},"3419840","Tofu","(Yet another) C web framework","title","Show HN: Tofu -- (Yet another) C web framework","https:\u002F\u002Fgithub.com\u002FAlexBio\u002FTofu","github.com","al3xbio",1325603656,2012,49,16,481,1677,29,"shown","languages","web framework","library",[24,25,26,27],"c web framework","c http server","web framework c","c mvc","curious",-0.019,{"positive":31,"neutral":32,"mixed":33,"critical":34},2,6,0,1,9,{"design":37,"idea":38,"execution":39,"performance":40},{"positive":33,"critical":33},{"positive":33,"critical":34},{"positive":33,"critical":33},{"positive":31,"critical":33},[33,33,42,33,33,34,42,42,42,33,33,33,42,42,43,43],3,5,null,{"problem":44,"audience":44,"pricing":44,"motivation":44,"time_to_build":44,"stack":46,"openness":53,"stage":54,"team_size":54},[47],{"value":48,"source":49,"evidence":50},"C","maker",[51],{"id":52},"post","open_source","unknown",{"praise":56,"objections":65,"requests":80,"questions":81,"alternatives":96},[57],{"value":58,"source":59,"evidence":60},"Commenters report good results with a C HTTP server as a base for web interfaces","commenter",[61],{"id":62,"by":63,"text":64},"3420412","luser001","I've also had good success hacking a bare-bones routing infrastructure on top of mongoose, a single-file threaded HTTP\u002FHTTPS server. I've had to read or step through the code a…",[66,73],{"value":67,"source":59,"evidence":68},"Why write a web framework in C at all",[69],{"id":70,"by":71,"text":72},"3422490","aen1","Not to criticize unnecessarily, but what would anyone want to code web apps in C? I'm not saying rails, etc. are the be-all-end-all, but why C? To seem extreme?",{"value":74,"source":59,"evidence":75},"Mongoose is not suited to serving many public users",[76],{"id":77,"by":78,"text":79},"3421688","dryicerx","Another +1 for mongoose, it's great for adding a quick web interface to a c\u002Fc++ program quickly (ie. status or quick admin interface)... but I wouldn't use it as a web-framework…",[],[82,89],{"value":83,"source":59,"evidence":84},"How fast is it compared to other frameworks",[85],{"id":86,"by":87,"text":88},"3420217","adriand","So, is it super fast?",{"value":90,"source":59,"evidence":91},"What are other C web frameworks or ORMs",[92],{"id":93,"by":94,"text":95},"3420702","diminish","not indicative of anything, i was able to compile check using \"ab\" a \"hello world ap\" with eventhttp; - sinatra request per second 442 - tofu requests per second 5909 Note that…",[97,101,108,115],{"value":98,"source":59,"evidence":99},"Mongoose",[100],{"id":62,"by":63,"text":64},{"value":102,"source":59,"evidence":103},"Nginx modules",[104],{"id":105,"by":106,"text":107},"3419936","alexchamberlain","I've recently looked at extending Nginx for my own gains. This has several advantages over such frameworks. For example, you can serve both flat files and dynamic (C) content…",{"value":109,"source":59,"evidence":110},"Mongrel2",[111],{"id":112,"by":113,"text":114},"3420810","pjscott","Another possibility is to make your C program handle requests over ZeroMQ and stick it behind Mongrel2: http:\u002F\u002Fmongrel2.org\u002F",{"value":116,"source":59,"evidence":117},"Sinatra",[118],{"id":93,"by":94,"text":95},{"comments":31,"answered":33,"key":120},[121,124],{"id":122,"text":123},"3419931","I actually find \"->\" with spaces cleaner and easier to read (just like with almost all the other operators). The \"->\" operatore without spaces around is very popular (also in…",{"id":125,"text":126},"3419986","On the other hand it would make your applications nginx-specific, right? (which is a problem only if don't like to get stuck with a single web server).",{"commenters":128,"max_depth":42,"maker_replies":31,"first_comment_mins":129,"lifespan_hours":130},12,10,28,[132,134,135,139,141,145,147,151,154,156,157,159,160,163,165,167],[62,33,33,133,63,33],"other\u002Fneutral\u002Fnone",[77,33,33,133,78,33],[136,34,42,137,138,33],"3419879","project\u002Fneutral\u002Fdesign","unwind",[122,34,33,140,11,34],"project\u002Fpositive\u002Fdesign",[142,34,33,143,144,33],"3420035","other\u002Fneutral\u002Fdesign","ZitchDog",[70,31,34,146,71,33],"project\u002Fcritical\u002Fidea",[148,42,42,149,150,33],"3420252","project\u002Fneutral\u002Fidea","jcfrei",[152,42,42,149,153,33],"3420587","meric",[105,155,42,149,106,33],4,[125,155,33,146,11,34],[158,155,33,133,106,33],"3420070",[112,155,33,133,113,33],[161,155,42,162,106,33],"3423330","maker\u002Fneutral\u002Fexecution",[86,43,42,164,87,33],"project\u002Fneutral\u002Fperformance",[93,43,43,166,94,33],"project\u002Fpositive\u002Fperformance",[168,43,43,166,87,33],"3425508",[],[171,176,181,185,190,195],{"id":172,"name":173,"points":174,"category":175},"3413594","Scrollorama",395,"dev_tools",{"id":177,"name":178,"points":179,"category":180},"3417830","nnrccar",300,"ai",{"id":182,"name":183,"points":184,"category":175},"3404330","Honeybadger",147,{"id":186,"name":187,"points":188,"category":189},"3422493","momentum",85,"infrastructure",{"id":191,"name":192,"points":193,"category":194},"3416952","Damn Simple Carpooling",53,"productivity",{"id":196,"name":197,"points":198,"category":20},"3422721","Pjs",52,false,"v2",{"id":202,"name":5,"line":6,"ai":199,"cat":20,"year":13,"points":14,"comments":15,"rec":28,"s":203,"top":18,"kw":204,"maker":11,"domain":10,"tier":19,"attempts":33,"strip":205,"url":9,"mix":206,"praise":58,"objection":67,"sub":21},3419840,-0.02,[24,25,26,27],"0030013330003355",[31,32,33,34],1794036492186]