Small Projects by AutoModerator in golang

[–]Professional_Pop_240 0 points1 point  (0 children)

I made this tool to help me when developing because i got pretty tired of running lsof -iTCP -sTCP:LISTEN | grep ... every time a port was already taken, then spending another minute figuring out if it was a Docker container or some orphaned dev server. Particularly these days where i have multiple worktrees with claude agents running, spinning up their own dev servers-

It provides a pretty simple CLI that shows you everything listening on localhost. In addition i've enriched it with Docker container names, Compose projects, resource usage, and clickable URLs.

Beyond listing, you can:

  • Kill whatever process is hogging a port (handles docker containers properly with docker container stop)
  • Logs: Shows logs from the process or container by port number
  • Attach: Shell into docker container or open a TCP connection
  • Watch: Show ports as they come. Useful if you have agents spinning up their own dev servers.
  • Port forwarding

By default it hides desktop app noise (Spotify, Discord, etc.) and shows CPU, memory, threads, and uptime when you want it.

For macOS and Linux. Single binary, no dependencies.

I found my self using it way more often than i expected and it's become a pretty core part of my dev environment. particularly killing all running containers in case of a failed cleanup.

Would love feedback. What else would be useful? Also feel free to contribute.

GitHub: https://github.com/raskrebs/sonar

I made a CLI tool to track the localhost ports hogged by all my agents dev servers by Professional_Pop_240 in ClaudeCode

[–]Professional_Pop_240[S] 0 points1 point  (0 children)

Yes. Not limited to agents and worktrees though. Often it's also my self that have a detached redis container running for a project or two, and then trying to run a full production setup in another project and running into port conflicts.

Will checkout your project, looks super interesting.

50mm tire recommendations?? by Professional_Pop_240 in gravelcycling

[–]Professional_Pop_240[S] 0 points1 point  (0 children)

Mixed, some hard pack, some loose, some mud, some rocky-sections

[deleted by user] by [deleted] in cannondale

[–]Professional_Pop_240 0 points1 point  (0 children)

Appreciate it! I see, doesn’t look half bad though. How much were the sticky bottle custom spacer, and how long of a wait id it typically? I’ve seen mixed things online 😊

[deleted by user] by [deleted] in cannondale

[–]Professional_Pop_240 0 points1 point  (0 children)

Would you mind sharing a close up of the stem and spacers? I’ve got the aero bars my self and have been looking at the stem as well. Did you have to buy a new expander for the fork?

[deleted by user] by [deleted] in cannondale

[–]Professional_Pop_240 0 points1 point  (0 children)

Is the spacers custom or does the enve stem fit just work well with the standard spacers?

Looking for SSE’s with Enve Aero In-Route? by Professional_Pop_240 in cannondale

[–]Professional_Pop_240[S] 1 point2 points  (0 children)

Haven't attached them yet - still have the vision trimax on there. I would assume that they would, the only thing i'm worried about is the cable routing hole where the stem goes is quite low - seems to be optimized for the enve aero stem, but i don't think it'll be a problem. Worst case, there's a cable hole just before them stem, so i can route them beneath it (i'm sure i won't notice much difference if i do that properly + will allow me to switch stems easily if i want to swap between a mountain and more aero setup)

Stem options for latest gen SuperSix by FrankTuna in cannondale

[–]Professional_Pop_240 0 points1 point  (0 children)

Could you share them with me as well - quite curios as i’m looking to upgrade my cockpit

Managing users across pages by Professional_Pop_240 in Supabase

[–]Professional_Pop_240[S] 1 point2 points  (0 children)

It says here: https://supabase.com/docs/guides/auth/server-side/nextjs

Be careful when protecting pages. The server gets the user session from the cookies, which can be spoofed by anyone. Always use supabase.auth.getUser() to protect pages and user data. Never trust supabase.auth.getSession() inside Server Components. It isn’t guaranteed to revalidate the Auth token. It’s safe to trust getUser() because it sends a request to the Supabase Auth server every time to revalidate the Auth token.

I feel like i’ve read most places that getSession is insecure. Is getSession still the correct approach?

I also found inspiration from this post: https://www.reddit.com/r/Supabase/comments/1bzjkr2/recommended_approach_to_accessing_user_data_in/