[{"data":1,"prerenderedAt":198},["ShallowReactive",2],{"project-46695492":3},{"id":4,"name":5,"line":5,"line_source":6,"title":7,"url":8,"domain":9,"maker":10,"posted_at":11,"year":12,"points":13,"comments":14,"rank_in_year":15,"shown_in_year":16,"top":17,"tier":18,"category":19,"subcategory":20,"format":21,"keywords":22,"reception":26,"sentiment":27,"stance_mix":28,"scored_comments":33,"aspects":34,"strip":39,"post_text":40,"what":41,"said":63,"maker_in_thread":123,"shape":134,"grid":137,"attempts":158,"same_week":159,"maker_shows":29,"maker_hidden":190,"reader_version":191,"card":192},"46695492","Typing Tennis","title","Show HN: Typing Tennis","https:\u002F\u002Ftypingtennis.com","typingtennis.com","twalichiewicz",1768932385,2026,5,10,3727,4366,86,"shown","games","typing game","web_app",[20,23,24,25],"tennis","browser game","typing practice","roasted",-0.111,{"positive":29,"neutral":30,"mixed":31,"critical":32},2,0,1,3,6,{"design":35,"docs":36,"execution":37,"performance":38},{"positive":31,"critical":30},{"positive":31,"critical":31},{"positive":30,"critical":29},{"positive":30,"critical":30},[13,13,30,31,30,31,30,31,30,32],"Hey HN,\n\nHere’s a quick weekend project: tennis, but played by typing. Try it out!",{"problem":42,"audience":43,"pricing":42,"motivation":51,"time_to_build":57,"stack":61,"openness":62,"stage":62,"team_size":62},null,{"value":44,"source":45,"evidence":46},"Casual players; one commenter says they will show it to students","commenter",[47],{"id":48,"by":49,"text":50},"46697111","eggy1","Took a second to figure out. I ended up going to the Itch page and reading that you had to enter a second word to hit it back. Once I figured that out it was a blast to play.…",{"value":52,"source":53,"evidence":54},"Quick weekend project","maker",[55],{"id":56},"post",{"value":58,"source":53,"evidence":59},"A weekend",[60],{"id":56},[],"unknown",{"praise":64,"objections":80,"requests":106,"questions":121,"alternatives":122},[65,73],{"value":66,"source":45,"evidence":67},"Fun and addictive once the rules click",[68,69],{"id":48,"by":49,"text":50},{"id":70,"by":71,"text":72},"46697120","frizlab","Fun but too easy! Once you have understood it is up to you to give the return word, just type “exceptional” for every returns, the computer loses every time. EDIT: After winning…",{"value":74,"source":45,"evidence":75},"Likes the 8-bit look and sound",[76],{"id":77,"by":78,"text":79},"46697106","Aken","Like the other comments, it took me a lot of losing to figure out that my return word is my choice. I kept trying to type a word I was being given, and wondering why I kept…",[81,90,102],{"value":82,"source":45,"evidence":83},"Rules are unclear; hard to tell that the return word is the player's choice",[84,85,86],{"id":77,"by":78,"text":79},{"id":48,"by":49,"text":50},{"id":87,"by":88,"text":89},"46697050","SwiftyBug","Love the concept, but I couldn't figure out how to play. I can't hit the ball back even though I'm typing the right word. I keep getting a hint that says that I should type the…",{"value":91,"source":45,"evidence":92},"Hint and Enter handling was buggy in some browsers",[93,97,101],{"id":94,"by":95,"text":96},"46697065","teach","I LOVE the style, but it's currently unplayably buggy! * I type \"hit\" to serve (note: for consistency you should require ENTER on this word, too) * Ball slowly travels, CPU…",{"id":98,"by":99,"text":100},"46697068","dunb","I'm not sure if it's working right for me on Orion Version 1.0.3 (142), WebKit 624.1.2.19.2. I type my word, hit \"Enter,\" and I still get the hint to press \"Enter.\" It would also…",{"id":87,"by":88,"text":89},{"value":103,"source":45,"evidence":104},"Too easy once the mechanic is understood",[105],{"id":70,"by":71,"text":72},[107,112,117],{"value":108,"source":45,"evidence":109},"Clearer in-game instructions",[110,111],{"id":48,"by":49,"text":50},{"id":77,"by":78,"text":79},{"value":113,"source":45,"evidence":114},"Require Enter to start the game after typing hit",[115,116],{"id":94,"by":95,"text":96},{"id":98,"by":99,"text":100},{"value":118,"source":45,"evidence":119},"Bigger display",[120],{"id":77,"by":78,"text":79},[],[],{"comments":32,"answered":30,"key":124},[125,128,131],{"id":126,"text":127},"46697442","Thanks for all your feedback! I was suspicious when I first coded this that it needed a better way to introduce the rules. I've gone ahead and buffed the HINT so that time…",{"id":129,"text":130},"46697567","I'll look into what's going on with some of the other browsers. To clarify, the game actually runs a quick validation when the timer runs out to check if your word is valid. If…",{"id":132,"text":133},"46698624","I've added a few onboarding messages and made the HINT more forgiving. Let me know if that helps!",{"commenters":135,"max_depth":29,"maker_replies":32,"first_comment_mins":136,"lifespan_hours":13},7,118,[138,140,142,144,146,149,151,153,155,156],[77,30,13,139,78,30],"project\u002Fpositive\u002Fdesign",[48,31,13,141,49,30],"project\u002Fpositive\u002Fdocs",[126,29,30,143,10,31],"maker\u002Fpositive\u002Fdocs",[94,32,31,145,95,30],"project\u002Fcritical\u002Fexecution",[147,32,30,148,71,30],"46697103","commenter\u002Fneutral\u002Fdocs",[98,150,31,145,99,30],4,[129,150,30,152,10,31],"maker\u002Fneutral\u002Fexecution",[87,13,31,154,88,30],"project\u002Fcritical\u002Fdocs",[132,13,30,143,10,31],[70,33,32,157,71,30],"project\u002Fmixed\u002Fperformance",[],[160,165,170,175,180,185],{"id":161,"name":162,"points":163,"category":164},"46706528","ChartGPU",670,"data",{"id":166,"name":167,"points":168,"category":169},"46713106","Sweep Next-Edit 1.5B",534,"ai",{"id":171,"name":172,"points":173,"category":174},"46673809","Calquio",314,"finance_crypto",{"id":176,"name":177,"points":178,"category":179},"46696283","Coi",225,"languages",{"id":181,"name":182,"points":183,"category":184},"46709543","Rails UI",208,"dev_tools",{"id":186,"name":187,"points":188,"category":189},"46671952","Dock",177,"productivity",false,"v2",{"id":193,"name":5,"line":5,"ai":190,"cat":19,"year":12,"points":13,"comments":14,"rec":26,"s":194,"top":17,"kw":195,"maker":10,"domain":9,"tier":18,"attempts":30,"strip":196,"url":8,"mix":197,"praise":66,"objection":82,"sub":20},46695492,-0.11,[20,23,24,25],"5501010103",[29,30,31,32],1794036690796]