[{"data":1,"prerenderedAt":448},["ShallowReactive",2],{"project-47452515":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":43,"post_text":46,"what":47,"said":78,"maker_in_thread":210,"shape":220,"grid":223,"attempts":412,"same_week":413,"maker_shows":41,"maker_hidden":440,"reader_version":441,"card":442},"47452515","Sonar","A tiny CLI to see and kill whatever's running on localhost","title","Show HN: Sonar – A tiny CLI to see and kill whatever's running on localhost","https:\u002F\u002Fgithub.com\u002FRasKrebs\u002Fsonar","github.com","raskrebs",1774000796,2026,204,77,287,4366,7,"notable","dev_tools","port management cli","cli",[24,25,26,27],"localhost port","kill port","lsof alternative","listening ports","mixed",0.303,{"positive":31,"neutral":32,"mixed":33,"critical":34},14,11,0,6,31,{"idea":37,"design":40,"docs":42},{"positive":38,"critical":39},9,4,{"positive":41,"critical":33},1,{"positive":33,"critical":41},[44,33,33,33,33,33,33,44,44,45,45,33,41,41,41,44,33,33,44,44,44,44,33,41,45,44,33,45,45,45,45,41,33,45,45,44,45,45,45,33],3,5,null,{"problem":48,"audience":55,"pricing":46,"motivation":59,"time_to_build":46,"stack":63,"openness":75,"stage":76,"team_size":77},{"value":49,"source":50,"evidence":51},"Hard to see what is listening on local ports and kill it; lsof commands are hard to remember","maker",[52],{"id":53,"by":11,"text":54},"47452516","I always have a bunch of local projects running, particularly during the weekend where I'm rarely working on one thing at a time. A big pain of mine was constantly running into…",{"value":56,"source":50,"evidence":57},"Developers running multiple local projects and containers",[58],{"id":53,"by":11,"text":54},{"value":60,"source":50,"evidence":61},"Frustration with port collisions and orphaned dev servers across worktrees and containers",[62],{"id":53,"by":11,"text":54},[64],{"value":65,"source":66,"evidence":67},"Go","commenter",[68,71],{"id":69,"by":11,"text":70},"47454650","I have added quite a lot of functionality beyond listing and killing ports. Please check out the readme, it may convince you to try it out.",{"id":72,"by":73,"text":74},"47459645","mrbonner","Hey, thanks for sharing this. Your app inspires me to take a look at Go, again! I've been searching for another primary language to learn. My primary used to be Java at $day$ job…","open_source","launched","unknown",{"praise":79,"objections":107,"requests":148,"questions":175,"alternatives":180},[80,99],{"value":81,"source":66,"evidence":82},"Useful, saves remembering lsof flags",[83,87,91,95],{"id":84,"by":85,"text":86},"47460588","diablevv","Nice — the use case for this is immediately obvious. I've spent more time than I care to admit running `lsof -i :PORT` or `netstat -tulpn | grep PORT` trying to figure out what's…",{"id":88,"by":89,"text":90},"47463523","derodero24","Can never remember the right lsof incantation for this and end up googling it every time. The Docker container detection is a nice touch — half the time whatever's squatting on…",{"id":92,"by":93,"text":94},"47453096","Bradd3rs","love this, i get tired of spamming lsof -i tcp:xxxx",{"id":96,"by":97,"text":98},"47457846","kohexo","Honestly, pretty cool. I was wondering if something like this existed. Right now I have scripts to kill the ports I use consistently to avoid issues when developing. Kudos!",{"value":100,"source":66,"evidence":101},"Docker container info is a nice touch",[102,103],{"id":88,"by":89,"text":90},{"id":104,"by":105,"text":106},"47457192","jkestner","I read the readme. :) Very nice. Thoughtful features. Get this on Homebrew!",[108,122,133],{"value":109,"source":66,"evidence":110},"lsof with a shell alias does the same job",[111,115,119],{"id":112,"by":113,"text":114},"47453584","Doublon","The README made me realize I just needed a simple `alias local-tcp-listeners='lsof -iTCP -sTCP:LISTEN'` in my `~\u002F.bash_aliases` :)",{"id":116,"by":117,"text":118},"47456358","RonanSoleste","I just have an alias in my .bashrc :)",{"id":120,"by":117,"text":121},"47457241","Can it do things that existing tools build into my distro cannot? It looks to me like a convenience tool. Which is fine, but i see no need for it myself",{"value":123,"source":66,"evidence":124},"Title suggests listing and killing only; the tool does more",[125,129],{"id":126,"by":127,"text":128},"47454753","fionic","Its funny bc the title suggests a tool for listing and killing",{"id":130,"by":131,"text":132},"47455727","tomcatfish","HN is a place where people can be expected to go beyond the title (though I like the limited script and am glad it was posted). Misleading titles are not uncommonly flagged and…",{"value":134,"source":66,"evidence":135},"Name clashes with SonarQube",[136,140,144],{"id":137,"by":138,"text":139},"47455404","maciejj","Nice! I always forget the lsof flags and end up googling them every time. Would be cool if it could run in the system tray and show what's running on your ports at a glance.…",{"id":141,"by":142,"text":143},"47454168","moezd","Sonar as in SonarQube? That's an interesting choice for a name :)",{"id":145,"by":146,"text":147},"47456062","Brainspackle","you picked a unique name. There is already a massively popular product called Sonar",[149,153,161,168],{"value":150,"source":66,"evidence":151},"Tray app or system tray view of ports",[152],{"id":137,"by":138,"text":139},{"value":154,"source":66,"evidence":155},"Homebrew install",[156,157],{"id":104,"by":105,"text":106},{"id":158,"by":159,"text":160},"47457548","0x457","I recommend just doing a tap in the same repo rather than adding this to homebrew first.",{"value":162,"source":66,"evidence":163},"Show Tailscale or custom host IP instead of localhost for Docker URLs",[164],{"id":165,"by":166,"text":167},"47453783","klaushardt","Would be nice to have a flag to customize the URL displayed for Docker containers. I connect to my host via Tailscale, but I can’t open links with localhost. It would be helpful…",{"value":169,"source":66,"evidence":170},"Interactive multiselect kill",[171],{"id":172,"by":173,"text":174},"47458499","mustafa0x","Nice util. It should be possible to kill inline. I like clack\u002Fprompts. See its multiselect API. https:\u002F\u002Fgithub.com\u002Fbombshell-dev\u002Fclack\u002Ftree\u002Fmain\u002Fpackages\u002Fprompts",[176],{"value":177,"source":66,"evidence":178},"Can it do things existing distro tools cannot?",[179],{"id":120,"by":117,"text":121},[181,188,195,203],{"value":182,"source":66,"evidence":183},"killport",[184],{"id":185,"by":186,"text":187},"47454454","pdimitar","I am absolutely installing this and starting to use it daily! For the even less patient there's also this (not mine): https:\u002F\u002Fgithub.com\u002Fjkfran\u002Fkillport",{"value":189,"source":66,"evidence":190},"Evan Hahn's murder script",[191],{"id":192,"by":193,"text":194},"47453662","pluc","Have a look at Evan Hahn's murder util: https:\u002F\u002Fcodeberg.org\u002FEvanHahn\u002Fdotfiles\u002Fsrc\u002Fcommit\u002F843b9ee13d949d346a4a73ccee2a99351aed285b\u002Fhome\u002Fbin\u002Fbin\u002Fmurder",{"value":196,"source":66,"evidence":197},"lsof shell aliases and functions",[198,202],{"id":199,"by":200,"text":201},"47454388","chwzr","i have this in my .zshrc which provides same functionality: ``` lk() { if [ $# -eq 0 ]; then local output=$(sudo lsof -iTCP -sTCP:LISTEN -n -P) elif [ $# -eq 1 ]; then local…",{"id":112,"by":113,"text":114},{"value":204,"source":66,"evidence":205},"ctop",[206],{"id":207,"by":208,"text":209},"47463939","spl757","ctop is great for docker containers",{"comments":211,"answered":44,"key":212},26,[213,214,217],{"id":53,"text":54},{"id":215,"text":216},"47453902","Will check it out",{"id":218,"text":219},"47458817","Will have a look. Mind creating an issue so i don't forget? https:\u002F\u002Fgithub.com\u002Fraskrebs\u002Fsonar\u002Fissues",{"commenters":221,"max_depth":34,"maker_replies":211,"first_comment_mins":33,"lifespan_hours":222},44,65,[224,226,228,230,234,237,241,243,247,250,253,256,258,260,262,265,266,267,269,272,273,275,276,278,280,282,284,286,288,291,292,295,297,299,301,303,305,308,312,315,317,319,322,324,327,329,331,333,334,336,339,341,343,346,348,351,355,357,359,361,365,367,369,370,374,377,380,382,386,388,391,393,394,396,400,402,404,407,409,410],[53,33,33,225,11,41],"project\u002Fpositive\u002Fidea",[192,33,44,227,193,33],"project\u002Fneutral\u002Fidea",[215,33,33,229,11,41],"maker\u002Fneutral\u002Fnone",[231,33,33,232,233,33],"47457576","other\u002Fneutral\u002Fnone","0cf8612b2e1e",[235,33,33,232,236,33],"47453797","embedding-shape",[238,33,33,239,240,33],"47461104","other\u002Fneutral\u002Fidea","msdz",[242,33,33,232,236,33],"47465894",[244,33,33,245,246,33],"47478837","commenter\u002Fneutral\u002Fnone","hackerthemonkey",[248,33,33,232,249,33],"47465030","rtpg",[251,41,33,232,252,33],"47456701","quotemstr",[254,41,33,232,255,33],"47456793","formerly_proven",[257,41,33,232,252,33],"47460005",[259,41,33,232,255,33],"47460403",[261,41,33,232,159,33],"47457112",[172,263,44,264,173,33],2,"project\u002Fneutral\u002Fdesign",[218,263,33,229,11,41],[137,44,44,227,138,33],[268,44,33,229,11,41],"47457069",[270,44,45,271,138,33],"47464837","maker\u002Fpositive\u002Fnone",[165,39,44,264,166,33],[274,39,33,229,11,41],"47454564",[72,45,45,271,73,33],[277,45,33,232,11,41],"47459777",[279,45,33,232,73,33],"47460039",[199,34,41,281,200,33],"project\u002Fcritical\u002Fidea",[69,34,33,283,11,41],"project\u002Fneutral\u002Fnone",[126,34,41,285,127,33],"project\u002Fcritical\u002Fdocs",[287,34,33,229,11,41],"47454899",[289,34,41,281,290,33],"47454940","bartek_gdn",[130,34,33,232,131,33],[293,18,44,227,294,33],"47457270","fcoury",[296,18,33,229,11,41],"47457365",[298,18,33,232,294,33],"47457786",[300,18,33,245,11,41],"47458798",[302,18,33,232,294,33],"47462793",[304,18,33,245,11,41],"47464593",[306,18,33,232,307,33],"47458337","zenoprax",[309,310,44,227,311,33],"47467125",8,"oweiler",[313,38,44,227,314,33],"47454472","clutchski",[316,38,33,229,11,41],"47454707",[145,38,41,318,146,33],"project\u002Fcritical\u002Fnone",[185,320,45,321,186,33],10,"project\u002Fpositive\u002Fnone",[323,320,33,229,11,41],"47454625",[325,32,44,283,326,33],"47454738","mfkrause",[328,32,33,229,11,41],"47454804",[116,330,33,232,117,33],12,[332,330,33,229,11,41],"47456562",[120,330,41,281,117,33],[335,330,33,283,11,41],"47457278",[337,330,45,225,338,33],"47458613","Barbing",[340,330,33,229,11,41],"47458863",[141,342,44,283,142,33],13,[344,342,33,232,345,33],"47454456","beart",[347,342,33,229,11,41],"47454837",[349,31,33,232,350,33],"47465701","cyanydeez",[352,353,45,225,354,33],"47462044",15,"koinedad",[96,356,45,225,97,33],16,[358,356,33,229,11,41],"47458852",[360,356,45,225,97,33],"47463634",[362,363,45,225,364,33],"47484993",17,"FileForge",[92,366,45,225,93,33],18,[368,366,33,271,11,41],"47453246",[112,366,41,281,113,33],[371,366,33,372,373,33],"47453659","commenter\u002Fneutral\u002Fidea","deadbabe",[375,366,33,372,376,33],"47453709","paddim8",[378,366,33,379,11,41],"47453895","commenter\u002Fpositive\u002Fidea",[381,366,33,225,11,41],"47453861",[383,384,45,225,385,33],"47454063",19,"frankdenbow",[387,384,33,229,11,41],"47454692",[104,389,45,390,105,33],20,"project\u002Fpositive\u002Fdesign",[392,389,33,283,11,41],"47457254",[158,389,44,229,159,33],[395,389,33,229,11,41],"47464598",[397,398,45,321,399,33],"47473929",21,"maurice-nomad",[84,401,45,225,85,33],22,[403,401,33,229,11,41],"47460720",[405,401,44,227,406,33],"47461388","zephyreon",[88,408,45,225,89,33],23,[207,408,33,232,208,33],[411,408,33,232,89,33],"47477096",[],[414,418,423,428,432,436],{"id":415,"name":416,"points":417,"category":20},"47506713","Video.js v10",648,{"id":419,"name":420,"points":421,"category":422},"47503617","sentrysearch",438,"ai",{"id":424,"name":425,"points":426,"category":427},"47505144","Email.md",380,"productivity",{"id":429,"name":430,"points":431,"category":20},"47491466","Cq",225,{"id":433,"name":434,"points":435,"category":20},"47499672","ProofShot",161,{"id":437,"name":438,"points":439,"category":422},"47524704","cog",157,false,"v2",{"id":443,"name":5,"line":6,"ai":440,"cat":20,"year":13,"points":14,"comments":15,"rec":28,"s":444,"top":18,"kw":445,"maker":11,"domain":10,"tier":19,"attempts":33,"strip":446,"url":9,"mix":447,"praise":81,"objection":109,"sub":21},47452515,0.3,[24,25,26,27],"3000000335501113003333015305555105535550",[31,32,33,34],1793991148629]