[{"data":1,"prerenderedAt":391},["ShallowReactive",2],{"project-49073834":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":27,"sentiment":28,"stance_mix":29,"scored_comments":34,"aspects":35,"strip":44,"post_text":46,"what":47,"said":87,"maker_in_thread":226,"shape":233,"grid":238,"attempts":352,"same_week":353,"maker_shows":309,"maker_hidden":383,"reader_version":384,"card":385},"49073834","Yap","OSS on-device voice dictation for macOS with no model to download","title","Show HN: Yap – OSS on-device voice dictation for macOS with no model to download","https:\u002F\u002Fgithub.com\u002FFrigadeHQ\u002Fyap","github.com","pancomplex",1785177362,2026,104,44,655,4366,16,"notable","productivity","voice dictation","desktop_app",[21,24,25,26],"macos","on-device speech to text","speechanalyzer","mixed",0.285,{"positive":30,"neutral":31,"mixed":32,"critical":33},9,11,0,4,24,{"idea":36,"privacy":38,"execution":40,"design":42,"performance":43},{"positive":37,"critical":32},3,{"positive":39,"critical":32},1,{"positive":39,"critical":41},2,{"positive":39,"critical":41},{"positive":32,"critical":32},[37,32,45,32,37,32,32,32,32,37,32,45,32,37,32,37,45,45,39,37,45,39,32,39,32,32,39,32,45,37,37,37,32,37,32,45,32,32,37,45],5,"Hey HN! I wanted to share this OSS project I've been working on.\n\nIt's called Yap and its a small menu-bar app for macOS that does voice to text for any input. You'll set a hotkey, press it, talk, press it again, and the text gets pasted into whatever field you were in. Everything runs locally and never leaves your computer. Fully OSS and MIT licensed.\n\nWith macOS 26, Apple recently added two new APIs, SpeechAnalyzer and SpeechTranscriber, that do streaming on-device speech to text using models the OS ships and manages. So the app ships no model of its own and loads nothing before the first wo",{"problem":48,"audience":54,"pricing":62,"motivation":63,"time_to_build":62,"stack":67,"openness":84,"stage":85,"team_size":86},{"value":49,"source":50,"evidence":51},"Dictating text into any field without cloud services, paid APIs or large bundled models","maker",[52],{"id":53},"post",{"value":55,"source":56,"evidence":57},"Mac users who want private voice-to-text","inferred",[58,59],{"id":53},{"id":60,"by":11,"text":61},"49084548","Apple's built in dictation still executes parts of it online and even has a disclosure that it \"sends information like your voice input, contacts, and location to Apple.\" This…",null,{"value":64,"source":50,"evidence":65},"Avoid closed-source, paid, cloud-based and memory-heavy dictation tools",[66],{"id":53},[68,72,76,80],{"value":69,"source":50,"evidence":70},"Swift",[71],{"id":53},{"value":73,"source":50,"evidence":74},"SpeechAnalyzer and SpeechTranscriber (Apple on-device speech APIs)",[75],{"id":53},{"value":77,"source":50,"evidence":78},"AVAudioEngine",[79],{"id":53},{"value":81,"source":50,"evidence":82},"SwiftData",[83],{"id":53},"open_source","launched","unknown",{"praise":88,"objections":107,"requests":146,"questions":180,"alternatives":196},[89,100],{"value":90,"source":91,"evidence":92},"On-device privacy and speed are valuable","commenter",[93,97],{"id":94,"by":95,"text":96},"49080237","echoscarrie","On-device speech recognition on macOS is such a game changer for privacy and speed. Excited to test this out!",{"id":98,"by":11,"text":99},"49079055","I don't think you're missing something - Apple's built in dictation is pretty good. The biggest issue is that it still executes parts of it online via Apple's servers and even…",{"value":101,"source":91,"evidence":102},"Simple and clean design",[103],{"id":104,"by":105,"text":106},"49096248","BurpyDave","This is great! Love how simple it is",[108,119,129,140],{"value":109,"source":91,"evidence":110},"Built-in macOS dictation is already good enough",[111,115],{"id":112,"by":113,"text":114},"49078891","heresalexandria","I don't think get it unless I'm missing something - how is this different from just using the built in Mac OS dictation feature? At first I thought it was going to be a…",{"id":116,"by":117,"text":118},"49081752","Ducki","Does the built-in dictation not use these models or why would I use this app instead of Apple's own dictation?",{"value":120,"source":91,"evidence":121},"Transcript history should not be stored",[122,126],{"id":123,"by":124,"text":125},"49081110","jorisw","Couple of suggestions\u002Fremarks: - Remove the presence of the Dock icon. Yap is the kind of app you just want as a menu bar utility. Like Whisper. - Add a \"Settings...\" menu item…",{"id":127,"by":124,"text":128},"49081301","Honestly I'd ditch the Dock icon and keep the menubar item. For a utility with no other UI to use, that's the way to go, and similar apps do the same. W.r.t. the history — I'm…",{"value":130,"source":91,"evidence":131},"Does not send no data over network, unverified offline claim",[132,136],{"id":133,"by":134,"text":135},"49082261","echoangle","That doesn’t prove it doesn’t send data if it has the possibility. It could use the offline model only as a fallback.",{"id":137,"by":138,"text":139},"49093536","ganeshmshetty","yeah, this is a possibility and also they could store it and send it after we appear online.",{"value":141,"source":91,"evidence":142},"Crashes and no output on macOS 27 beta",[143],{"id":144,"by":124,"text":145},"49081291","Strangely, on my macOS 27 Beta build 26A5388g, nothing happens after I finish speaking. No input is transcribed or pasted and nothing is shown in the history. I do see the input…",[147,152,158,169,173],{"value":148,"source":91,"evidence":149},"Remove the Dock icon and keep only the menu bar item",[150,151],{"id":123,"by":124,"text":125},{"id":127,"by":124,"text":128},{"value":153,"source":91,"evidence":154},"Add a CLI or scripting interface for file transcription",[155],{"id":156,"by":113,"text":157},"49079329","Ahh that makes sense, I was under the impression that OS dictation used exclusively on device models for dictation now but you're right - they do still send this data for…",{"value":159,"source":91,"evidence":160},"Add a language picker and multilingual support",[161,165],{"id":162,"by":163,"text":164},"49085705","xjlin0","Great, hope to see the language picker soon!",{"id":166,"by":167,"text":168},"49083984","perelin","Big fan of Handy as well. I often mix languages (german\u002Fenglish) and Apple onboard dictation is not working well in these cases. Having the ability to switch models so far has…",{"value":170,"source":91,"evidence":171},"Support F13 shortcut and a Settings menu item",[172],{"id":123,"by":124,"text":125},{"value":174,"source":91,"evidence":175},"Add automatic punctuation and capitalization",[176],{"id":177,"by":178,"text":179},"49088102","outoftheweed","built a small voice notes thing for myself last week and the surprise was that transcription accuracy wasn't the hard part. it's that i almost never want the raw transcript, i…",[181,186],{"value":182,"source":91,"evidence":183},"How is this different from built-in macOS dictation?",[184,185],{"id":112,"by":113,"text":114},{"id":116,"by":117,"text":118},{"value":187,"source":91,"evidence":188},"Does SpeechAnalyzer make network calls?",[189,193],{"id":190,"by":191,"text":192},"49079561","HaloZero","Does the new SpeechAnalyzer API not call Apple Servers? I remember when I was building on the last version, it you wanted real time transcription you needed at least to upload it…",{"id":194,"by":11,"text":195},"49080002","I think it once did! Now it doesn't - ways to easily verify this: 1) install the dmg in the GH repo 2) turn off wifi 3) use it offline",[197,201,208,215,219],{"value":198,"source":91,"evidence":199},"Apple built-in macOS dictation",[200],{"id":112,"by":113,"text":114},{"value":202,"source":91,"evidence":203},"Handy",[204],{"id":205,"by":206,"text":207},"49081264","d3k","Seems nice! I have been using Handy https:\u002F\u002Fhandy.computer\u002F for a while and I am happy with it (using Parakeet), this seems quite similar in terms of features, except that is…",{"value":209,"source":91,"evidence":210},"MacWhisper",[211],{"id":212,"by":213,"text":214},"49081002","jwr","Incidentally, I've been testing a lot of dictation apps and models. I am on macOS Sequoia and intend to skip Tahoe altogether, so newer Apple models were not an option. I also…",{"value":216,"source":91,"evidence":217},"TypeWhisper",[218],{"id":212,"by":213,"text":214},{"value":220,"source":91,"evidence":221},"Spokenly",[222],{"id":223,"by":224,"text":225},"49078914","eric_khun","link to the benchmark against parakeet TDT v2 (the one im using now with spokenly) : https:\u002F\u002Fget-inscribe.com\u002Fblog\u002Fparakeet-moss-apple-speech-benchmark.html NVIDIA Parakeet TDT…",{"comments":31,"answered":45,"key":227},[228,229,232],{"id":98,"text":99},{"id":230,"text":231},"49079385","That would be a super trivial fork actually! You basically just need this file https:\u002F\u002Fgithub.com\u002FFrigadeHQ\u002Fyap\u002Fblob\u002Fmain\u002FSources\u002FServices\u002FAudioCaptureService.swift and then wrap…",{"id":194,"text":195},{"commenters":234,"max_depth":235,"maker_replies":31,"first_comment_mins":236,"lifespan_hours":237},28,7,523,353,[239,241,243,245,246,248,250,252,253,257,260,261,265,268,271,272,273,276,279,283,286,289,292,294,297,300,301,304,307,311,313,314,315,319,324,327,330,332,334,336,339,343,345,348],[112,32,37,240,113,32],"project\u002Fneutral\u002Fidea",[98,32,32,242,11,39],"maker\u002Fneutral\u002Fidea",[156,32,45,244,113,32],"project\u002Fpositive\u002Fidea",[230,32,32,242,11,39],[190,32,37,247,191,32],"project\u002Fneutral\u002Fprivacy",[194,32,32,249,11,39],"maker\u002Fneutral\u002Fprivacy",[133,32,32,251,134,32],"commenter\u002Fneutral\u002Fprivacy",[137,32,32,251,138,32],[254,32,32,255,256,32],"49256876","other\u002Fneutral\u002Fnone","RichAwo",[258,32,37,240,259,32],"49080440","earthpyy",[212,39,32,255,213,32],[262,39,32,263,264,32],"49086575","commenter\u002Fpositive\u002Fnone","SeoFood",[266,41,45,244,267,32],"49080105","9dev",[269,41,32,255,270,32],"49082663","theturtletalks",[116,37,37,240,117,32],[60,37,32,249,11,39],[274,33,37,240,275,32],"49080858","prabhanjana_c",[277,33,45,278,275,32],"49080924","project\u002Fpositive\u002Fexecution",[280,45,45,281,282,32],"49081722","project\u002Fpositive\u002Fnone","primaprashant",[144,284,39,285,124,32],6,"project\u002Fcritical\u002Fexecution",[287,284,32,288,11,39],"49084592","maker\u002Fneutral\u002Fexecution",[290,284,37,291,124,32],"49087215","project\u002Fneutral\u002Fexecution",[293,235,45,281,138,32],"49093605",[123,295,39,296,124,32],8,"project\u002Fcritical\u002Fdesign",[298,295,32,299,11,39],"49081162","maker\u002Fneutral\u002Fdesign",[127,295,39,296,124,32],[302,30,32,255,303,32],"49079637","hbn",[305,30,32,306,11,39],"49080008","commenter\u002Fneutral\u002Fnone",[308,309,39,285,310,32],"49078875",10,"__erik",[312,309,32,288,11,39],"49078950",[205,31,45,244,206,32],[166,31,37,240,167,32],[316,317,32,255,318,32],"49092667",12,"stevenhubertron",[320,321,37,322,323,32],"49100505",13,"project\u002Fneutral\u002Fnone","foobarqux",[223,325,37,326,224,32],14,"project\u002Fneutral\u002Fperformance",[328,325,32,329,11,39],"49079020","maker\u002Fneutral\u002Fperformance",[177,331,37,240,178,32],15,[333,331,32,242,11,39],"49088204",[94,18,45,335,95,32],"project\u002Fpositive\u002Fprivacy",[337,18,32,338,11,39],"49080509","maker\u002Fneutral\u002Fnone",[340,341,32,255,342,32],"49083513",17,"solos",[162,344,37,240,163,32],18,[104,346,45,347,105,32],19,"project\u002Fpositive\u002Fdesign",[349,350,45,281,351,32],"49090610",20,"eadesola",[],[354,359,363,368,373,378],{"id":355,"name":356,"points":357,"category":358},"49098510","TurboFieldfare",919,"ai",{"id":360,"name":361,"points":362,"category":358},"49026810","Echo",484,{"id":364,"name":365,"points":366,"category":367},"49021270","blackhole.plav.in",477,"learning_science",{"id":369,"name":370,"points":371,"category":372},"49090607","HNewhere",433,"dev_tools",{"id":374,"name":375,"points":376,"category":377},"49100043","CheapFoodMap",287,"consumer_social",{"id":379,"name":380,"points":381,"category":382},"49057666","Reverse Minesweeper",267,"games",false,"v2",{"id":386,"name":5,"line":6,"ai":383,"cat":20,"year":13,"points":14,"comments":15,"rec":27,"s":387,"top":18,"kw":388,"maker":11,"domain":10,"tier":19,"attempts":32,"strip":389,"url":9,"mix":390,"praise":90,"objection":109,"sub":21},49073834,0.28,[21,24,25,26],"3050300003050303551351010010533303050035",[30,31,32,33],1794036706307]