[{"data":1,"prerenderedAt":304},["ShallowReactive",2],{"project-22091874":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":34,"aspects":35,"strip":42,"post_text":44,"what":45,"said":82,"maker_in_thread":162,"shape":173,"grid":177,"attempts":269,"same_week":270,"maker_shows":33,"maker_hidden":297,"reader_version":298,"card":299},"22091874","Proton Native V2","Create Cross Platform Desktop Apps with React","title","Show HN: Proton Native V2 – Create Cross Platform Desktop Apps with React","https:\u002F\u002Fproton-native.js.org\u002F#\u002Fv2_changes?","proton-native.js.org","kusti8",1579447519,2020,222,34,230,3028,8,"notable","dev_tools","cross-platform desktop framework","library",[24,25,26,27,28],"react desktop apps","cross platform desktop","react native desktop","qt react","electron alternative","loved",0.29,{"positive":32,"neutral":32,"mixed":33,"critical":33},7,1,16,{"design":36,"performance":38,"idea":39,"execution":41},{"positive":37,"critical":33},0,{"positive":37,"critical":37},{"positive":40,"critical":37},3,{"positive":40,"critical":37},[37,40,37,40,37,43,37,43,43,40,37,37,37,40,43,43,40,40,40,37,40,37,43,43,37,37,37,33,37,37,37,37,37,37],5,null,{"problem":46,"audience":53,"pricing":44,"motivation":62,"time_to_build":44,"stack":66,"openness":79,"stage":80,"team_size":81},{"value":47,"source":48,"evidence":49},"Building cross-platform desktop apps with React without Electron or a web browser.","maker",[50],{"id":51,"by":11,"text":52},"22093715","Proton Native is a way to make cross-platform desktop apps with React, without using Electron or any sort of web browser. Your React code gets translated into Qt or wxWidgets API…",{"value":54,"source":55,"evidence":56},"React developers building desktop apps","inferred",[57,58],{"id":51,"by":11,"text":52},{"id":59,"by":60,"text":61},"22094971","brylie","Any chance of supporting a library agnostic approach, such that developers could use vanilla JS or a framework of their choice?",{"value":63,"source":48,"evidence":64},"V1 was showing its age, so the maker rewrote it with requested features.",[65],{"id":51,"by":11,"text":52},[67,71,75],{"value":68,"source":48,"evidence":69},"React",[70],{"id":51,"by":11,"text":52},{"value":72,"source":48,"evidence":73},"Qt",[74],{"id":51,"by":11,"text":52},{"value":76,"source":48,"evidence":77},"wxWidgets",[78],{"id":51,"by":11,"text":52},"open_source","launched","solo",{"praise":83,"objections":104,"requests":115,"questions":131,"alternatives":143},[84,96],{"value":85,"source":86,"evidence":87},"Impressive work, especially for a high school developer","commenter",[88,92],{"id":89,"by":90,"text":91},"22097311","tomduncalf","Impressive project, especially for a high schooler! Congratulations on the release of v2! I have been very impressed with how well an existing React Native app can be ported to…",{"id":93,"by":94,"text":95},"22094217","stevesimmons","> Currently, Proton Native is headed by one high school senior with not enough time. Well done!",{"value":97,"source":86,"evidence":98},"Good initiative for a lighter alternative to Electron",[99,103],{"id":100,"by":101,"text":102},"22095017","aethe","First off, well done, this looks like a good initiative and you've clearly worked hard on it! My main question is about app size. Once one has fully built an app and is ready to…",{"id":89,"by":90,"text":91},[105],{"value":106,"source":86,"evidence":107},"Calling Qt and wxWidgets apps native is questionable; they may not feel native",[108,112],{"id":109,"by":110,"text":111},"22095361","LeoNatan25","If this is qt and wxWidgets, how is this \"native\"? It's as much \"native\" as React \"Native\" is on either iOS or Android. \"Native\" means native to the ecosystem it runs on. The…",{"id":113,"by":110,"text":114},"22095546","Please read the rest of what I wrote. Simply using native widgets is not enough. A \"native\" app has to feel like a first class citizen in the ecosystem it is running. Achieving…",[116,124],{"value":117,"source":86,"evidence":118},"Support for vanilla JS or other frameworks, not only React",[119,120],{"id":59,"by":60,"text":61},{"id":121,"by":122,"text":123},"22094269","newsbinator","Well done! I'd love to see something like this for VueJs.",{"value":125,"source":86,"evidence":126},"Migration path from existing Electron apps",[127],{"id":128,"by":129,"text":130},"22095139","rvz","> ...requested features including flexbox, styling, hot reloading, and components with the same API as React Native. That sounds like the way to go for a near 1:1 port of a…",[132,136],{"value":133,"source":86,"evidence":134},"How does app size compare to Electron?",[135],{"id":100,"by":101,"text":102},{"value":137,"source":86,"evidence":138},"How do RAM and CPU usage compare to Electron?",[139],{"id":140,"by":141,"text":142},"22095348","mariopt","Similar to https:\u002F\u002Fgithub.com\u002Fgabrielbull\u002Freact-desktop but with Linux support, that's great. I hope this gets more traction than the react-desktop project. Super curious: How…",[144,148,155],{"value":145,"source":86,"evidence":146},"react-desktop",[147],{"id":140,"by":141,"text":142},{"value":149,"source":86,"evidence":150},"Tauri",[151],{"id":152,"by":153,"text":154},"22094224","sansnomme","See also: https:\u002F\u002Fgithub.com\u002Ftauri-apps\u002Ftauri",{"value":156,"source":86,"evidence":157},"React Native for Windows, Web and mobile",[158],{"id":159,"by":160,"text":161},"22094282","satvikpendem","I've been tinkering with React Native and it looks like you can do something quite similar to Proton Native here, while also targeting mobile platforms. Here is how you can cover…",{"comments":163,"answered":164,"key":165},4,2,[166,167,170],{"id":51,"text":52},{"id":168,"text":169},"22095097","The library is already built to be largely library agnostic. To add a new library, just add a file that translates my calls to the library calls. This is how I achieved both Qt…",{"id":171,"text":172},"22095108","The only thing that meaningfully contributes to the size of the app is the size of the GUI library libraries. It currently bundles both Mac and Windows, so you can build packages…",{"commenters":174,"max_depth":43,"maker_replies":163,"first_comment_mins":175,"lifespan_hours":176},27,289,47,[178,180,182,184,186,187,188,192,195,199,202,206,209,212,215,217,219,220,222,224,227,230,234,237,240,244,246,249,252,255,257,260,263,266],[51,37,37,179,11,33],"project\u002Fpositive\u002Fidea",[59,37,40,181,60,37],"project\u002Fneutral\u002Fdesign",[168,37,37,183,11,33],"maker\u002Fneutral\u002Fdesign",[100,37,40,185,101,37],"project\u002Fneutral\u002Fperformance",[171,37,37,185,11,33],[128,37,43,179,129,37],[189,37,37,190,191,37],"22095356","commenter\u002Fneutral\u002Fidea","bobwaycott",[193,37,43,179,194,37],"22095155","azhenley",[196,37,43,197,198,37],"22095814","maker\u002Fpositive\u002Fexecution","pcr910303",[200,33,40,181,201,37],"22094306","Klonoar",[203,33,37,204,205,37],"22094840","commenter\u002Fneutral\u002Fdesign","ptx",[207,33,37,204,208,37],"22094935","torarnv",[210,33,37,211,201,37],"22095093","commenter\u002Fpositive\u002Fdesign",[213,33,40,214,198,37],"22095832","project\u002Fmixed\u002Fdesign",[93,164,43,216,94,37],"maker\u002Fpositive\u002Fnone",[89,40,43,218,90,37],"maker\u002Fpositive\u002Fidea",[140,163,40,185,141,37],[121,43,40,221,122,37],"project\u002Fneutral\u002Fidea",[159,223,40,221,160,37],6,[225,223,37,226,11,33],"22094893","maker\u002Fneutral\u002Fidea",[228,223,40,226,229,37],"22106870","cztomsik",[231,223,37,232,233,37],"22096253","other\u002Fneutral\u002Fnone","justinmcp",[235,32,43,197,236,37],"22101487","RMPR",[238,18,43,197,239,37],"22094930","kochthesecond",[241,242,37,232,243,37],"22102529",9,"1MachineElf",[152,245,37,232,153,37],10,[247,245,37,232,248,37],"22094251","jbverschoor",[109,250,33,251,110,37],11,"project\u002Fcritical\u002Fdesign",[253,250,37,204,254,37],"22095375","zozbot234",[113,250,37,256,110,37],"commenter\u002Fcritical\u002Fdesign",[258,250,37,259,254,37],"22095614","commenter\u002Fneutral\u002Fnone",[261,250,37,259,262,37],"22096118","zamadatix",[264,250,37,204,265,37],"22097917","playpause",[267,250,37,256,268,37],"22095943","blueprint",[],[271,276,280,284,289,293],{"id":272,"name":273,"points":274,"category":275},"22063744","No-Bullshit Games",520,"games",{"id":277,"name":278,"points":279,"category":20},"22073037","ESQLate",505,{"id":281,"name":282,"points":283,"category":20},"22081419","OneDev",459,{"id":285,"name":286,"points":287,"category":288},"22091603","A set of standard document templates",433,"productivity",{"id":290,"name":291,"points":292,"category":288},"22065333","Screenshot Hero",429,{"id":294,"name":295,"points":16,"category":296},"22077052","sixty5o2","hardware",false,"v2",{"id":300,"name":5,"line":6,"ai":297,"cat":20,"year":13,"points":14,"comments":15,"rec":29,"s":30,"top":18,"kw":301,"maker":11,"domain":10,"tier":19,"attempts":37,"strip":302,"url":9,"mix":303,"praise":85,"objection":106,"sub":21},22091874,[24,25,26,27,28],"0303050553000355333030550001000000",[32,32,33,33],1794036585615]