[{"data":1,"prerenderedAt":327},["ShallowReactive",2],{"project-19051914":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":36,"aspects":37,"strip":45,"post_text":47,"what":48,"said":81,"maker_in_thread":150,"shape":159,"grid":164,"attempts":283,"same_week":289,"maker_shows":39,"maker_hidden":319,"reader_version":320,"card":321},"19051914","GuiLite","Tiny UI framework, runs on MCU without OS","title","Show HN: GuiLite – Tiny UI framework, runs on MCU without OS","https:\u002F\u002Fgithub.com\u002Fidea4good\u002FGuiLite","github.com","zorro_young",1548999324,2019,355,48,76,2195,4,"legend","languages","embedded gui framework","library",[24,25,26,27,28],"embedded gui","microcontroller ui","mcu graphics","stm32 ui","lightweight gui framework","curious",-0.155,{"positive":32,"neutral":33,"mixed":34,"critical":35},2,7,0,5,14,{"design":38,"performance":40,"idea":41,"docs":42,"privacy":43,"execution":44},{"positive":39,"critical":32},1,{"positive":39,"critical":34},{"positive":34,"critical":39},{"positive":34,"critical":34},{"positive":34,"critical":34},{"positive":34,"critical":32},[39,46,46,35,34,34,34,34,34,34,34,34,34,34,34,34,34,34,46,46,46,34,46,39,39,34,34,34,34,34,35,34,39,34,39,34,34,34,34,46],3,null,{"problem":49,"audience":59,"pricing":47,"motivation":47,"time_to_build":47,"stack":66,"openness":79,"stage":80,"team_size":80},{"value":50,"source":51,"evidence":52},"Provides a graphical UI on microcontrollers without an operating system","commenter",[53,57],{"id":54,"by":55,"text":56},"19058412","janoc","It is for embedded development - e.g. your car radio or washing machine. You wouldn't use this for desktop. BTW, it is written right there in the title \"runs on MCU ...\" (MCU =…",{"id":58},"post",{"value":60,"source":51,"evidence":61},"Embedded developers building UIs for devices such as washing machines or car radios",[62,63],{"id":54,"by":55,"text":56},{"id":64,"by":55,"text":65},"19058420","This is for embedded development (e.g. a gui for your washing machine), not a replacement for Electron, Qt, GTK or what have you.",[67,74],{"value":68,"source":69,"evidence":70},"C","inferred",[71],{"id":72,"by":11,"text":73},"19061800","For Linux: It render the framebuffer directly -- you can check the code GuiLiteSamples\u002FHelloParticle\u002FBuildLinux\u002Fmain.cpp For MCU: It call LCD driver for rendering pixel -- you…",{"value":75,"source":76,"evidence":77},"C++","maker",[78],{"id":72,"by":11,"text":73},"open_source","unknown",{"praise":82,"objections":94,"requests":113,"questions":126,"alternatives":134},[83],{"value":84,"source":51,"evidence":85},"Looks quite nice and promising",[86,90],{"id":87,"by":88,"text":89},"19052464","pjmlp","Looks quite nice.",{"id":91,"by":92,"text":93},"19054691","raphlinus","This is actually a super-interesting problem. The complex scripts require \"shaping\", which increasingly is done by HarfBuzz. Companies used to maintain their own proprietary…",[95,102],{"value":96,"source":51,"evidence":97},"Examples look outdated and messy with inconsistent alignment and fonts",[98],{"id":99,"by":100,"text":101},"19054112","pasta","The examples of GuiLite and those of Littlevgi (posted in this thread) all look a little outdated and messy. And I can understand this. Most programmers aren't designers. But if…",{"value":103,"source":51,"evidence":104},"Thai and Hindi text rendering is incorrect",[105,109],{"id":106,"by":107,"text":108},"19052686","wingerlang","The multi language example for Thai looks like it is rendering wrongly. Proper rendering: ความสูง",{"id":110,"by":111,"text":112},"19054211","sudenmorsian","Similarly for the Hindi, where the character combinations are not properly “merging”. Multiscript support (especially Indic scripts) is hard but unfortunately this current stage…",[114,119],{"value":115,"source":51,"evidence":116},"Support for complex scripts such as Thai and Hindi",[117,118],{"id":106,"by":107,"text":108},{"id":110,"by":111,"text":112},{"value":120,"source":51,"evidence":121},"A browser port",[122],{"id":123,"by":124,"text":125},"19052672","tluyben2","Seems very interesting; nice work for sure. Any chance of a browser port?",[127],{"value":128,"source":51,"evidence":129},"How does it fit with other software such as framebuffer or Wayland",[130],{"id":131,"by":132,"text":133},"19053568","iveqy","So this is a framework to X? Framebuffer? Wayland? Everything? How does this software fit into all other software out there?",[135,146],{"value":136,"source":51,"evidence":137},"LittlevGL",[138,142],{"id":139,"by":140,"text":141},"19052516","btashton","If you are looking for something that will run on even smaller embedded devices I highly recommend LittlevGL. I have used it to throw a UI on a few projects, and found it to be…",{"id":143,"by":144,"text":145},"19055672","squarefoot","Thanks, this one also supports the Esp32, which is great.",{"value":147,"source":51,"evidence":148},"Qt, GTK, Electron",[149],{"id":64,"by":55,"text":65},{"comments":33,"answered":32,"key":151},[152,155,156],{"id":153,"text":154},"19061780","Yes, GuiLite could embeded in Qt, MFC... And you also could run without them, even without OS.",{"id":72,"text":73},{"id":157,"text":158},"19052532","Thanks",{"commenters":160,"max_depth":161,"maker_replies":33,"first_comment_mins":162,"lifespan_hours":163},28,6,151,58,[165,167,171,173,177,181,183,187,190,192,195,198,201,204,206,209,211,214,216,218,220,223,225,226,228,229,231,235,237,238,241,243,245,247,249,252,254,256,258,261,264,267,269,271,275,276,279,281],[99,34,39,166,100,34],"project\u002Fcritical\u002Fdesign",[168,34,46,169,170,34],"19054265","project\u002Fneutral\u002Fdesign","methyl",[172,34,46,169,100,34],"19054451",[174,39,35,175,176,34],"19054449","project\u002Fpositive\u002Fperformance","nickjj",[178,39,34,179,180,34],"19054945","commenter\u002Fneutral\u002Fperformance","t0astbread",[182,39,34,179,176,34],"19055291",[184,39,34,185,186,34],"19055741","commenter\u002Fneutral\u002Fnone","vijaybritto",[188,39,34,185,189,34],"19058222","hueho",[191,39,34,185,186,34],"19069923",[193,39,34,185,194,34],"19058556","dragonshed",[196,39,34,185,197,34],"19056486","tenaciousDaniel",[199,39,34,179,200,34],"19055643","mixmastamyk",[202,39,34,203,176,34],"19055967","other\u002Fneutral\u002Fperformance",[205,39,34,203,200,34],"19056408",[207,39,34,203,208,34],"19060443","wtallis",[210,39,34,203,200,34],"19065152",[212,39,34,203,213,34],"19056415","leeoniya",[215,39,34,203,176,34],"19056702",[217,39,34,203,92,34],"19056490",[219,39,34,203,176,34],"19056779",[221,39,34,203,222,34],"19065540","nzjrs",[64,39,46,224,55,34],"project\u002Fneutral\u002Fidea",[153,39,34,224,11,39],[131,32,46,227,132,34],"project\u002Fneutral\u002Fdocs",[54,32,46,224,55,34],[72,32,34,230,11,39],"project\u002Fneutral\u002Fexecution",[232,46,46,233,234,34],"19055089","project\u002Fneutral\u002Fprivacy","black_puppydog",[106,18,39,236,107,34],"project\u002Fcritical\u002Fexecution",[110,18,39,236,111,34],[239,18,34,185,240,34],"19054555","jake_the_third",[242,18,34,185,240,34],"19055890",[244,18,34,185,92,34],"19056029",[246,18,34,185,240,34],"19060474",[91,18,34,248,92,34],"other\u002Fneutral\u002Fnone",[250,18,34,248,251,34],"19059412","mikeday",[253,18,34,248,92,34],"19063715",[87,35,35,255,88,34],"project\u002Fpositive\u002Fdesign",[157,35,34,257,11,39],"maker\u002Fpositive\u002Fnone",[259,161,39,166,260,34],"19061988","hk-mars",[262,161,34,185,263,34],"19063187","maslam",[265,161,34,266,11,39],"19063211","maker\u002Fneutral\u002Fnone",[139,33,39,268,140,34],"project\u002Fcritical\u002Fidea",[270,33,34,257,11,39],"19052530",[272,33,34,273,274,34],"19054244","other\u002Fpositive\u002Fnone","webmobdev",[143,33,34,248,144,34],[277,278,34,266,11,39],"19052541",8,[123,280,46,230,124,34],9,[282,280,34,230,11,39],"19061811",[284,288],{"id":285,"t":286,"points":287,"comments":33},"16499857",1519977180,19,{"id":4,"t":12,"points":14,"comments":15},[290,295,300,305,309,314],{"id":291,"name":292,"points":293,"category":294},"19050509","Learn React",509,"learning_science",{"id":296,"name":297,"points":298,"category":299},"19094818","Startup with no website",288,"security_privacy",{"id":301,"name":302,"points":303,"category":304},"19070114","UltronOS",220,"infrastructure",{"id":306,"name":307,"points":308,"category":20},"19100257","constate",131,{"id":310,"name":311,"points":312,"category":313},"19075490","Linjat",122,"games",{"id":315,"name":316,"points":317,"category":318},"19084050","AskData",111,"data",false,"v2",{"id":322,"name":5,"line":6,"ai":319,"cat":20,"year":13,"points":14,"comments":15,"rec":29,"s":323,"top":18,"kw":324,"maker":11,"domain":10,"tier":19,"attempts":32,"strip":325,"url":9,"mix":326,"praise":84,"objection":96,"sub":21},19051914,-0.15,[24,25,26,27,28],"1335000000000000003330311000005010100003",[32,33,34,35],1794036574458]