[{"data":1,"prerenderedAt":552},["ShallowReactive",2],{"project-4767056":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":45,"post_text":47,"what":48,"said":98,"maker_in_thread":228,"shape":237,"grid":241,"attempts":513,"same_week":514,"maker_shows":33,"maker_hidden":544,"reader_version":545,"card":546},"4767056","garlic.js","don't let your users lose their form data","title","Show HN: garlic.js - don't let your users lose their form data","http:\u002F\u002Fguillaumepotier.github.com\u002FGarlic.js\u002F","guillaumepotier.github.com","guillaumepotier",1352566846,2012,212,105,69,1677,5,"notable","languages","javascript library","library",[24,25,26,27],"form data recovery","localstorage","jquery plugin","form autosave","curious",-0.155,{"positive":31,"neutral":32,"mixed":33,"critical":34},6,28,3,12,49,{"docs":37,"design":40,"execution":42,"idea":43,"privacy":44},{"positive":38,"critical":39},0,1,{"positive":38,"critical":41},2,{"positive":38,"critical":41},{"positive":41,"critical":33},{"positive":38,"critical":33},[33,39,38,38,38,33,38,38,38,38,39,33,33,33,33,38,18,41,33,38,38,38,39,33,33,46,39,18,18,38,33,39,33,39,39,33,33,39,18,39],4,null,{"problem":49,"audience":47,"pricing":47,"motivation":59,"time_to_build":69,"stack":73,"openness":96,"stage":97,"team_size":96},{"value":50,"source":51,"evidence":52},"Users lose form data when they navigate away or the browser closes.","inferred",[53,55],{"id":54},"post",{"id":56,"by":57,"text":58},"4767157","LearnYouALisp","> don't let your users lose their form data This is a huge problem, and is the reason I've had Lazarus installed for a few years now.…",{"value":60,"source":61,"evidence":62},"Maker built it as a pet project in about an hour.","maker",[63,66],{"id":64,"by":11,"text":65},"4767162","Thanks for your first comments ;) This is a very very early alpha release. 1h of work in fact.. Please, feel free to contribute!",{"id":67,"by":11,"text":68},"4767391","Oh, I was totally unaware of this one. Never mind, it clearly shows that there's a lack here on this browser behavior. My project is juste a few hours pet project. I'll try to…",{"value":70,"source":61,"evidence":71},"about 1 hour",[72],{"id":64,"by":11,"text":65},[74,82,90],{"value":75,"source":76,"evidence":77},"JavaScript","commenter",[78],{"id":79,"by":80,"text":81},"4767346","mattmanser","This seems to be the new 'cool'. Why jQuery whine, whine, whine. You've got jQuery on your own site. Why are you moaning about it? The source is here:…",{"value":83,"source":76,"evidence":84},"jQuery",[85,89],{"id":86,"by":87,"text":88},"4767147","gildas","It would also be nice if the documentation mentioned that it requires jQuery.",{"id":79,"by":80,"text":81},{"value":91,"source":61,"evidence":92},"localStorage",[93],{"id":94,"by":11,"text":95},"4767263","Yes, I'll definitely re-work on both the code and the doc. I've read that there is a kind of localStorage portage for IE8- that I'll look into. Currently, if the browser does not…","unknown","prototype",{"praise":99,"objections":122,"requests":156,"questions":187,"alternatives":202},[100,111],{"value":101,"source":76,"evidence":102},"Solves a real problem well",[103,107],{"id":104,"by":105,"text":106},"4767690","ErrantX","This library solves a problem and solves it well. The local storage issue should be left up to other libraries who are designed to solve that gripe. :-)",{"id":108,"by":109,"text":110},"4767233","csmatt","I was thinking about this the other day and I thought \"How is this not standard!?\" Good job!",{"value":112,"source":76,"evidence":113},"Nice work and useful concept",[114,118],{"id":115,"by":116,"text":117},"4767123","StavrosK","Huh, this is very nice. Congratulations!",{"id":119,"by":120,"text":121},"4767154","RBerenguel","I just hope everyone gets to use it. I added it to my \"great to have\" Javascript libraries list. Good work!",[123,134,149],{"value":124,"source":76,"evidence":125},"Doesn't work in IE6\u002F7 because of localStorage dependency",[126,130],{"id":127,"by":128,"text":129},"4767141","fruchtose","I think the desire for this kind of project is very reasonably based, and it looks like you have done great work on most of the implementation. I have one gripe with it, though.…",{"id":131,"by":132,"text":133},"4767184","twmb","I disagree to a certain extent. I don't believe in catering to the possible 5% [1] market share that will not upgrade their browsers. Anything that strongly suggests people to…",{"value":135,"source":76,"evidence":136},"Privacy concerns about saving form data, including on public computers",[137,141,145],{"id":138,"by":139,"text":140},"4767397","ceejayoz","It's not standard because people frequently do things like type a credit card number into a form on a public computer. Lots of potential for privacy breaches.",{"id":142,"by":143,"text":144},"4767429","salman89","Should add an option for users to disable this (like remember me on login forms)... not good for public computers if you don't know the form you just filled in but didn't submit…",{"id":146,"by":147,"text":148},"4768011","astro1138","While convenient and technically fine, this can get creepy for users. “Wait, I didn't submit the form on purpose but the data has been saved?”",{"value":150,"source":76,"evidence":151},"Requires jQuery as a dependency",[152,153],{"id":86,"by":87,"text":88},{"id":154,"by":116,"text":155},"4767204","Hmm, what does jQuery provide that is so essential that someone decides to add a dependency this big for something so simple? It seems that everything requires jQuery these days,…",[157,172,176],{"value":158,"source":76,"evidence":159},"Support older browsers via fallback",[160,164,168],{"id":161,"by":162,"text":163},"4767507","ErikD","I would suggest using userData [1] for IE 6 and 7. [1] http:\u002F\u002Fmsdn.microsoft.com\u002Fen-us\u002Flibrary\u002Fms533007%28v=vs.85%29.aspx",{"id":165,"by":166,"text":167},"4767757","dmethvin","If you want to support this on IE 6\u002F7, just add a shim that uses userData behaviors for localStorage. Here's one: https:\u002F\u002Fgithub.com\u002Fmattpowell\u002Flocalstorageshim",{"id":169,"by":170,"text":171},"4767655","zapt02","i like it. workaround for older browser possible?",{"value":173,"source":76,"evidence":174},"Option to disable saving per form",[175],{"id":142,"by":143,"text":144},{"value":177,"source":76,"evidence":178},"Distinguish local draft data from server data",[179,183],{"id":180,"by":181,"text":182},"4767132","stevoyoung","Is there a way to differentiate between data that's only saved using Garlic (local) vs data that's also been saved to the server? This could be a huge confusion for users if…",{"id":184,"by":185,"text":186},"4767175","condiment","I agree with this. Outside of explicitly signaling to users that they have a saved 'draft' of the form, and having them click a button on the page to restore their filled out…",[188,195],{"value":189,"source":76,"evidence":190},"Why localStorage rather than sessionStorage",[191],{"id":192,"by":193,"text":194},"4768098","benschwarz","IE8 supports both local and sessionStorage. Which leads me to an aside — Why did you choose localStorage over sessionStorage? For those who don't know — local\u002Fsession are the…",{"value":196,"source":76,"evidence":197},"Why is this not a browser feature or extension",[198],{"id":199,"by":200,"text":201},"4767441","anothermachine","Why is this a website feature instead of a browser extension, where it would work for every site?",[203,214,218],{"value":204,"source":76,"evidence":205},"Sisyphus jQuery plugin",[206,210],{"id":207,"by":208,"text":209},"4767303","5vforest","Don't want to be that guy, but what's different from http:\u002F\u002Fsimsalabim.github.com\u002Fsisyphus\u002F?",{"id":211,"by":212,"text":213},"4767779","mkelley","Pretty cool - another very similar option that comes in the form of a jQuery plugin that I just noticed in the [new] section of HN.... https:\u002F\u002Fgithub.com\u002Fsimsalabim\u002Fsisyphus - It…",{"value":215,"source":76,"evidence":216},"Lazarus form recovery add-on",[217],{"id":56,"by":57,"text":58},{"value":219,"source":76,"evidence":220},"Browser form recall in Chrome and Firefox",[221,224],{"id":222,"by":200,"text":223},"4767438","Form content recall is a native Chrome feature now.",{"id":225,"by":226,"text":227},"4768068","dbaupp","Firefox seems to do this sometimes too. (e.g. I went backwards then forwards while typing this, and my text was retained.)",{"comments":34,"answered":46,"key":229},[230,233,234],{"id":231,"text":232},"4767158","right!",{"id":94,"text":95},{"id":235,"text":236},"4767394","Good call. Not thought about that. At least, it is shown to the user, and not hidden and recorded secretly.",{"commenters":238,"max_depth":31,"maker_replies":34,"first_comment_mins":239,"lifespan_hours":240},73,24,152,[242,244,246,248,250,253,255,258,259,261,264,267,269,271,275,278,282,285,288,291,294,297,300,303,306,309,312,314,316,319,321,323,326,328,331,333,337,339,342,344,347,350,353,355,356,360,363,366,367,370,373,374,377,378,379,382,385,387,389,393,395,396,399,402,405,407,409,413,417,422,424,427,429,432,434,436,439,441,443,445,448,451,453,457,459,462,464,467,471,473,477,479,482,484,487,490,492,493,495,497,499,501,505,507,509],[127,38,33,243,128,38],"project\u002Fmixed\u002Fdocs",[86,38,33,245,87,38],"project\u002Fneutral\u002Fdocs",[231,38,38,247,11,39],"commenter\u002Fneutral\u002Fnone",[154,38,39,249,116,38],"project\u002Fcritical\u002Fdesign",[251,38,38,247,252,38],"4767345","vidarh",[254,38,38,247,116,38],"4767586",[256,38,38,247,257,38],"4767662","jarin",[79,38,38,247,80,38],[260,38,38,247,116,38],"4767584",[262,38,38,247,263,38],"4768492","joesb",[265,38,38,247,266,38],"4767356","seabee",[268,38,38,247,116,38],"4767587",[270,38,38,247,257,38],"4767667",[272,38,33,273,274,38],"4767853","project\u002Fmixed\u002Fexecution","FuzzyDunlop",[276,38,38,247,277,38],"4796717","th",[279,38,38,280,281,38],"4767177","other\u002Fneutral\u002Fnone","paulirish",[283,38,38,280,284,38],"4767199","jakejake",[286,38,38,280,287,38],"4767248","mikegioia",[289,38,38,280,290,38],"4767228","showerst",[292,38,38,280,293,38],"4768435","bmelton",[295,38,38,247,296,38],"4768632","marcuschristie",[298,38,38,280,299,38],"4767435","thejosh",[301,38,38,247,302,38],"4767515","malandrew",[304,38,38,247,305,38],"4768244","Dylan16807",[307,38,38,247,308,38],"4769500","morsch",[310,38,38,280,311,38],"4767566","strebler",[313,38,38,280,170,38],"4767676",[131,38,39,315,132,38],"project\u002Fcritical\u002Fnone",[317,38,38,247,318,38],"4771942","jtheory",[94,38,38,320,11,39],"maker\u002Fneutral\u002Fexecution",[192,38,33,322,193,38],"project\u002Fneutral\u002Fdesign",[324,38,33,322,325,38],"4768156","mh-",[327,38,38,247,193,38],"4768187",[329,38,38,247,330,38],"4769502","jonknee",[332,38,38,247,325,38],"4782505",[334,38,33,335,336,38],"4767275","project\u002Fneutral\u002Fidea","Hawkee",[161,38,33,338,162,38],"project\u002Fneutral\u002Fexecution",[340,38,33,335,341,38],"4767591","recuter",[343,38,33,338,257,38],"4767673",[345,38,38,247,346,38],"4767924","Navarr",[348,38,38,247,349,38],"4768567","neotek",[351,38,38,247,352,38],"4768700","juanojeda",[104,38,18,354,105,38],"project\u002Fpositive\u002Fidea",[165,38,33,338,166,38],[357,39,39,358,359,38],"4768317","project\u002Fcritical\u002Fdocs","daymun",[361,39,33,245,362,38],"4768463","flyingyeti",[364,41,33,245,365,38],"4769085","qohen",[56,33,33,335,57,38],[368,33,38,280,369,38],"4767213","mikeash",[371,33,38,280,372,38],"4767337","fudged71",[235,33,38,247,11,39],[375,33,38,280,376,38],"4767341","aw3c2",[225,33,38,280,226,38],[222,33,38,280,200,38],[380,33,38,247,381,38],"4767670","SquareWheel",[383,33,38,280,384,38],"4768316","mikescar",[386,33,38,247,57,38],"4768383",[207,46,39,388,208,38],"project\u002Fcritical\u002Fidea",[390,46,33,391,392,38],"4767334","project\u002Fneutral\u002Fnone","pyrotechnick",[67,46,38,394,11,39],"maker\u002Fneutral\u002Fidea",[180,18,33,322,181,38],[397,18,38,398,11,39],"4767167","maker\u002Fneutral\u002Fdesign",[400,18,33,338,401,38],"4767232","kmfrk",[403,18,33,322,404,38],"4767235","citricsquid",[406,18,33,322,181,38],"4767290",[184,18,33,408,185,38],"project\u002Fmixed\u002Fprivacy",[410,31,18,411,412,38],"4768140","project\u002Fpositive\u002Fnone","ryankirkman",[414,415,33,245,416,38],"4767113",7,"mmanfrin",[418,419,39,420,421,38],"4767148",8,"project\u002Fcritical\u002Fexecution","bookcasey",[423,419,38,280,392,38],"4767327",[425,419,38,426,11,39],"4767541","maker\u002Fneutral\u002Fnone",[119,428,18,411,120,38],9,[430,428,38,247,431,38],"4767178","pratyushmittal",[433,428,38,280,120,38],"4767324",[435,428,38,247,11,39],"4767412",[437,428,18,438,120,38],"4767525","maker\u002Fpositive\u002Fnone",[440,428,38,280,162,38],"4767527",[442,428,38,280,120,38],"4767750",[444,428,38,280,120,38],"4767763",[142,446,33,447,143,38],10,"project\u002Fneutral\u002Fprivacy",[449,446,33,447,450,38],"4767621","wildgift",[452,446,38,247,11,39],"4767829",[454,455,33,245,456,38],"4768521",11,"baseh",[146,34,39,458,147,38],"project\u002Fcritical\u002Fprivacy",[460,34,33,322,461,38],"4768210","bluetidepro",[211,463,33,335,212,38],13,[465,466,38,245,11,39],"4769238",14,[468,469,39,249,470,38],"4769250",15,"program",[64,472,38,391,11,39],16,[474,475,39,388,476,38],"4767896",17,"minervauk",[199,478,39,388,200,38],18,[480,478,33,335,481,38],"4767447","skndr",[483,478,33,335,162,38],"4767519",[485,478,33,335,486,38],"4767725","copypasteweb",[488,478,38,280,489,38],"4767856","kornnflake",[108,491,18,354,109,38],19,[138,491,39,458,139,38],[494,491,33,447,162,38],"4767532",[496,491,39,458,450,38],"4767656",[115,498,18,438,116,38],20,[500,498,38,426,11,39],"4767169",[502,503,33,245,504,38],"4768456",21,"borplk",[169,506,33,338,170,38],22,[508,506,38,338,11,39],"4767817",[510,511,39,420,512,38],"4770228",23,"webmech",[],[515,520,525,529,534,539],{"id":516,"name":517,"points":518,"category":519},"4775886","Tranquillity",398,"creative",{"id":521,"name":522,"points":523,"category":524},"4769757","RewindHN",250,"consumer_social",{"id":526,"name":527,"points":528,"category":524},"4767794","LaughMatch",159,{"id":530,"name":531,"points":532,"category":533},"4769278","TTS-API",111,"ai",{"id":535,"name":536,"points":537,"category":538},"4763581","HTTPretty",97,"dev_tools",{"id":540,"name":541,"points":542,"category":543},"4786205","HoRNDIS",72,"hardware",false,"v2",{"id":547,"name":5,"line":6,"ai":544,"cat":20,"year":13,"points":14,"comments":15,"rec":28,"s":548,"top":18,"kw":549,"maker":11,"domain":10,"tier":19,"attempts":38,"strip":550,"url":9,"mix":551,"praise":101,"objection":124,"sub":21},4767056,-0.15,[24,25,26,27],"3100030000133330523000133415503131133151",[31,32,33,34],1794036501338]