[{"data":1,"prerenderedAt":144},["ShallowReactive",2],{"maker-joshwcomeau":3},[4,33,59,82,106,123],{"id":5,"name":6,"line":7,"ai":8,"cat":9,"year":10,"points":11,"comments":12,"rec":13,"s":14,"top":15,"kw":16,"maker":21,"domain":22,"tier":23,"attempts":24,"strip":25,"url":26,"mix":27,"praise":31,"objection":32,"sub":17},11610832,"Panther","Discover new music through an infinite suggestion graph (React\u002FRedux)",false,"consumer_social",2016,108,39,"loved",0.36,16,[17,18,19,20],"music discovery","artist graph","related artists","spotify api","joshwcomeau","panther.audio","notable",0,"003000103305030053033003050330055530550","http:\u002F\u002Fpanther.audio\u002F",[28,28,29,30],8,3,1,"Smooth, slick interface and design","Suggestions are only as good as Spotify's related artists data",{"id":34,"name":35,"line":36,"ai":8,"cat":37,"year":38,"points":39,"comments":40,"rec":41,"s":42,"top":43,"kw":44,"maker":21,"domain":49,"tier":23,"attempts":24,"strip":50,"url":51,"mix":52,"praise":57,"objection":58,"sub":45},15501238,"Tello","A simple way to manage TV shows – built with React\u002FRedux","productivity",2017,78,58,"roasted",-0.32,26,[45,46,47,48],"tv show tracker","episode tracker","tv schedule","watch tracker","tello.tv","0350511113050113113553305000130111311113","https:\u002F\u002Ftello.tv",[53,54,55,56],7,6,5,19,"Clean, beautiful design","Does not load or shows blank page in several browsers, including Firefox, Chrome with adblock, and mobile",{"id":60,"name":61,"line":62,"ai":8,"cat":63,"year":64,"points":65,"comments":29,"rec":66,"s":67,"top":68,"kw":69,"maker":21,"domain":75,"tier":76,"attempts":24,"strip":77,"url":78,"mix":79,"praise":-1,"objection":80,"sub":81},17530818,"Guppy","A GUI desktop app that replaces the terminal for React dev","dev_tools",2018,37,"quiet",null,43,[70,71,72,73,74],"react","npm","local dev server","gui","web development","github.com","shown","010","https:\u002F\u002Fgithub.com\u002Fjoshwcomeau\u002Fguppy",[24,24,24,30],"Using create-react-app and npm is not really a barrier to entry","gui for web development",{"id":83,"name":84,"line":85,"ai":8,"cat":86,"year":87,"points":88,"comments":89,"rec":13,"s":90,"top":91,"kw":92,"maker":21,"domain":97,"tier":23,"attempts":24,"strip":98,"url":99,"mix":100,"praise":104,"objection":105,"sub":93},19383241,"Tinkersynth","A whimsical generative art machine","creative",2019,105,30,0.4,22,[93,94,95,96],"generative art","plotter drawings","line art","svg generator","tinkersynth.com","510530505503505505005130550330","https:\u002F\u002Ftinkersynth.com\u002Fslopes",[101,102,30,103],12,4,2,"Fun interface and randomize button","Vector download price of $19 is too high",{"id":107,"name":84,"line":108,"ai":8,"cat":86,"year":87,"points":109,"comments":101,"rec":110,"s":111,"top":112,"kw":113,"maker":21,"domain":117,"tier":23,"attempts":24,"strip":118,"url":119,"mix":120,"praise":121,"objection":122,"sub":93},19801484,"Tinkersynth 2.0 (now with color and open-sourced)",52,"mixed",-0.07,36,[93,114,115,116],"image generator","creative coding","synth","joshwcomeau.com","030530103013","https:\u002F\u002Fwww.joshwcomeau.com\u002Fposts\u002Ftinkersynth-two-point-oh\u002F",[30,29,30,103],"Delightful interactions and a well-executed premise of serendipitous discovery.","Source is available but the license is unclear; README says released without license.",{"id":124,"name":125,"line":126,"ai":8,"cat":63,"year":127,"points":128,"comments":129,"rec":130,"s":131,"top":15,"kw":132,"maker":21,"domain":117,"tier":23,"attempts":24,"strip":137,"url":138,"mix":139,"praise":141,"objection":142,"sub":143},22729860,"Use-sound","A React hook for sound effects on the web",2020,131,31,"debated",-0.01,[133,134,135,136],"react hook","sound effects","web audio","howler","5001010300553053313330100331050","https:\u002F\u002Fjoshwcomeau.com\u002Freact\u002Fannouncing-use-sound-react-hook\u002F",[55,140,24,55],9,"Nice showcase website and design","Sound on the web is annoying and hostile to users","react hook library",1793991215329]