[{"data":1,"prerenderedAt":174},["ShallowReactive",2],{"project-22837301":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":32,"aspects":33,"strip":37,"post_text":29,"what":40,"said":55,"maker_in_thread":104,"shape":113,"grid":117,"attempts":135,"same_week":136,"maker_shows":114,"maker_hidden":167,"reader_version":168,"card":169},"22837301","Frax","Experimental abstraction layer for coding of web UIs","title","Show HN: Frax – Experimental abstraction layer for coding of web UIs","https:\u002F\u002Fdocs.google.com\u002Fgview?url=https:\u002F\u002Fraw.githubusercontent.com\u002FMikaeI\u002Ffrax\u002Fmaster\u002FFrax%20presentation.pdf&embedded=true","docs.google.com","mikaelaast",1586552322,2020,30,11,1387,3028,46,"shown","dev_tools","ui abstraction layer","library",[24,25,26,27],"ui abstraction","web ui framework","react alternative","frontend","quiet",null,{"positive":31,"neutral":31,"mixed":31,"critical":31},1,4,{"design":34,"docs":35},{"positive":31,"critical":31},{"positive":36,"critical":36},0,[36,36,36,31,38,38,36,39],3,5,{"problem":41,"audience":29,"pricing":29,"motivation":29,"time_to_build":29,"stack":51,"openness":52,"stage":53,"team_size":54},{"value":42,"source":43,"evidence":44},"Abstracting the coding of web UIs into a simpler interface","inferred",[45,47],{"id":46},"post",{"id":48,"by":49,"text":50},"22849358","lioeters","Having a single function as an interface actually complicates things. I'd recommend separating it into functions that each does one thing only. For example: - Register template -…",[],"open_source","prototype","unknown",{"praise":56,"objections":65,"requests":77,"questions":86,"alternatives":98},[57],{"value":58,"source":59,"evidence":60},"Minimalism of the approach","commenter",[61],{"id":62,"by":63,"text":64},"22848653","lux","I like the minimalism, and I don't hate having alternatives to React and the like. It's not like this is a forever solved problem with a single accepted solution in world of…",[66,70],{"value":67,"source":59,"evidence":68},"Single-function interface adds complexity; too much magic",[69],{"id":48,"by":49,"text":50},{"value":71,"source":59,"evidence":72},"Looks like React API",[73],{"id":74,"by":75,"text":76},"22846651","molszanski","Looks exactly like a React api",[78,82],{"value":79,"source":59,"evidence":80},"Code example of clickableClassNames and changeableClassNames in practice",[81],{"id":62,"by":63,"text":64},{"value":83,"source":59,"evidence":84},"Clone of the token todo app",[85],{"id":62,"by":63,"text":64},[87],{"value":88,"source":59,"evidence":89},"Does the Google Docs link expose viewer identity",[90,94],{"id":91,"by":92,"text":93},"22846077","vorpalhex","Google docs link which displays the email and identity of all viewers. Direct link to pdf on Github: https:\u002F\u002Fgithub.com\u002FMikaeI\u002Ffrax\u002Fblob\u002Fmaster\u002FFrax%20presentation.pdf",{"id":95,"by":96,"text":97},"22848329","hunter2_","I thought Google docs only leaks identity among people specifically invited, not also among uninvited people who have the link even if they are authenticated. No? This would be a…",[99],{"value":100,"source":59,"evidence":101},"React",[102,103],{"id":62,"by":63,"text":64},{"id":74,"by":75,"text":76},{"comments":105,"answered":36,"key":106},2,[107,110],{"id":108,"text":109},"22846854","Hmm. That doesn't sound right. It just displays the document for me. What am I missing...?",{"id":111,"text":112},"22846992","Look closer! (I regret posting this as a PDF, so now I've put the whole text in the readme of the repo: https:\u002F\u002Fgithub.com\u002FMikaeI\u002Ffrax)",{"commenters":114,"max_depth":38,"maker_replies":105,"first_comment_mins":115,"lifespan_hours":116},6,1895,44,[118,120,122,124,126,128,130,132],[91,36,36,119,92,36],"other\u002Fneutral\u002Fnone",[108,36,36,121,11,31],"commenter\u002Fneutral\u002Fnone",[95,36,36,123,96,36],"other\u002Fneutral\u002Fprivacy",[48,31,31,125,49,36],"project\u002Fcritical\u002Fdesign",[62,105,38,127,63,36],"project\u002Fmixed\u002Fdocs",[74,38,38,129,75,36],"project\u002Fneutral\u002Fdesign",[111,38,36,131,11,31],"maker\u002Fneutral\u002Fdocs",[133,38,39,134,75,36],"22848945","maker\u002Fpositive\u002Fdesign",[],[137,142,147,152,157,162],{"id":138,"name":139,"points":140,"category":141},"22867775","Tom Nook's Laptop",552,"games",{"id":143,"name":144,"points":145,"category":146},"22837990","Valora",306,"creative",{"id":148,"name":149,"points":150,"category":151},"22867767","TerminusDB",231,"data",{"id":153,"name":154,"points":155,"category":156},"22858235","DJ3D",212,"consumer_social",{"id":158,"name":159,"points":160,"category":161},"22823320","LearnObit",209,"learning_science",{"id":163,"name":164,"points":165,"category":166},"22848779","Quiver Quant",202,"finance_crypto",false,"v2",{"id":170,"name":5,"line":6,"ai":167,"cat":20,"year":13,"points":14,"comments":15,"rec":28,"s":29,"top":18,"kw":171,"maker":11,"domain":10,"tier":19,"attempts":36,"strip":172,"url":9,"mix":173,"praise":58,"objection":67,"sub":21},22837301,[24,25,26,27],"00013305",[31,31,31,31],1794036588896]