frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

Show HN: Look Ma, No Linux: Shell, App Installer, Vi, Cc on ESP32-S3 / BreezyBox

https://github.com/valdanylchuk/breezydemo
166•isitcontent•8h ago•18 comments

Show HN: I spent 4 years building a UI design tool with only the features I use

https://vecti.com
277•vecti•10h ago•127 comments

Show HN: If you lose your memory, how to regain access to your computer?

https://eljojo.github.io/rememory/
221•eljojo•11h ago•139 comments

Show HN: ARM64 Android Dev Kit

https://github.com/denuoweb/ARM64-ADK
11•denuoweb•1d ago•0 comments

Show HN: R3forth, a ColorForth-inspired language with a tiny VM

https://github.com/phreda4/r3
57•phreda4•7h ago•9 comments

Show HN: Smooth CLI – Token-efficient browser for AI agents

https://docs.smooth.sh/cli/overview
79•antves•1d ago•59 comments

Show HN: Fitspire – a simple 5-minute workout app for busy people (iOS)

https://apps.apple.com/us/app/fitspire-5-minute-workout/id6758784938
2•devavinoth12•1h ago•0 comments

Show HN: Slack CLI for Agents

https://github.com/stablyai/agent-slack
43•nwparker•1d ago•11 comments

Show HN: I built a RAG engine to search Singaporean laws

https://github.com/adityaprasad-sudo/Explore-Singapore
4•ambitious_potat•2h ago•4 comments

Show HN: Gigacode – Use OpenCode's UI with Claude Code/Codex/Amp

https://github.com/rivet-dev/sandbox-agent/tree/main/gigacode
15•NathanFlurry•16h ago•5 comments

Show HN: Artifact Keeper – Open-Source Artifactory/Nexus Alternative in Rust

https://github.com/artifact-keeper
147•bsgeraci•1d ago•61 comments

Show HN: Horizons – OSS agent execution engine

https://github.com/synth-laboratories/Horizons
23•JoshPurtell•1d ago•5 comments

Show HN: FastLog: 1.4 GB/s text file analyzer with AVX2 SIMD

https://github.com/AGDNoob/FastLog
4•AGDNoob•4h ago•1 comments

Show HN: Daily-updated database of malicious browser extensions

https://github.com/toborrm9/malicious_extension_sentry
14•toborrm9•13h ago•5 comments

Show HN: Falcon's Eye (isometric NetHack) running in the browser via WebAssembly

https://rahuljaguste.github.io/Nethack_Falcons_Eye/
4•rahuljaguste•7h ago•1 comments

Show HN: BioTradingArena – Benchmark for LLMs to predict biotech stock movements

https://www.biotradingarena.com/hn
23•dchu17•12h ago•11 comments

Show HN: I built a directory of $1M+ in free credits for startups

https://startupperks.directory
4•osmansiddique•5h ago•0 comments

Show HN: A Kubernetes Operator to Validate Jupyter Notebooks in MLOps

https://github.com/tosin2013/jupyter-notebook-validator-operator
2•takinosh•5h ago•0 comments

Show HN: Micropolis/SimCity Clone in Emacs Lisp

https://github.com/vkazanov/elcity
171•vkazanov•1d ago•48 comments

Show HN: 33rpm – A vinyl screensaver for macOS that syncs to your music

https://33rpm.noonpacific.com/
3•kaniksu•7h ago•0 comments

Show HN: A password system with no database, no sync, and nothing to breach

https://bastion-enclave.vercel.app
10•KevinChasse•13h ago•11 comments

Show HN: Chiptune Tracker

https://chiptunes.netlify.app
3•iamdan•7h ago•1 comments

Show HN: GitClaw – An AI assistant that runs in GitHub Actions

https://github.com/SawyerHood/gitclaw
9•sawyerjhood•14h ago•0 comments

Show HN: Local task classifier and dispatcher on RTX 3080

https://github.com/resilientworkflowsentinel/resilient-workflow-sentinel
25•Shubham_Amb•1d ago•2 comments

Show HN: An open-source system to fight wildfires with explosive-dispersed gel

https://github.com/SpOpsi/Project-Baver
2•solarV26•11h ago•0 comments

Show HN: Agentism – Agentic Religion for Clawbots

https://www.agentism.church
2•uncanny_guzus•11h ago•0 comments

Show HN: Disavow Generator – Open-source tool to defend against negative SEO

https://github.com/BansheeTech/Disavow-Generator
5•SurceBeats•17h ago•1 comments

Show HN: Craftplan – I built my wife a production management tool for her bakery

https://github.com/puemos/craftplan
567•deofoo•5d ago•166 comments

Show HN: BPU – Reliable ESP32 Serial Streaming with Cobs and CRC

https://github.com/choihimchan/bpu-stream-engine
2•octablock•13h ago•0 comments

Show HN: Total Recall – write-gated memory for Claude Code

https://github.com/davegoldblatt/total-recall
10•davegoldblatt•1d ago•6 comments
Open in hackernews

Show HN: Minimal MCP server in Go showcasing project architecture

https://github.com/TuanKiri/weather-mcp-server
83•TuanKiri•10mo ago
I'm relatively new to Go, but recently got interested in how MCP servers work. I started thinking about what the architecture of such a project might look like, and decided to build a minimalist version as an experiment.

I based it on my past experience writing regular REST API servers and figured it might be useful or interesting to others as well.

Comments

timewizard•10mo ago
Go is one of those languages where "good layout" feels more elusive to me than in other languages. I think you accidentally highlight one of the reasons why.

    core.WeatherServices
Which makes sense because you're using a lot of things from core but since I have to carry the package name around everywhere I use it, outside of that module, it becomes a bit of a strain.

    weather.Service
Would clearly be a better name in the "go style," but the single level package structure always makes me feel like my types are dangling out in space outside of any decent hierarchy.

I love Go as a language but I dislike how often it makes me think of exceptionally tiny things like this. Please don't read this as a criticism of your project just a general criticism of how thin the Go "namespace" ideology actually is.

9rx•10mo ago
> Would clearly be a better name

It appears that it wanted to be services.WeatherService, which if reduced to service.Weather isn't looking so bad, but core ended up being introduced because the unnecessary interface already overloaded the namespace. The code doesn't accidentally highlight - it is crying out.

> always makes me feel like my types are dangling out in space

That's the idea, though, isn't it? Each package is its own distinct thing, intended to be useful and usable across many projects. There shouldn't be any kind of deep interconnectedness in most cases – and where there needs to be, you will typically place the related packages in a subfolder to communicate that relationship. I can't think offhand of any package manager that maintains anything other than a flat list of dependencies, and that's essentially what you are building here too.

I do think you have a point that many other ecosystems have a mindset where you are only building a single application with no attempt to find reusability beyond the immediate codebase. In large part because those languages/ecosystems require a bunch of extra, often complex, steps to make packages exportable. It can be a bit of mental shift to consider an application as a set of discrete, reusable parts if you come from those places.

angra_mainyu•10mo ago
The usual heuristic is if you're repeating a noun in several variables, move those to a separate package with that noun.

Example: WeatherConfig, WeatherService, WeatherPollInterval => weather.*

boyter•10mo ago
Perhaps adding some guide on how to hook this up to... well anything would be good :)

There is a lack of guidance for https://github.com/mark3labs/mcp-go/ which this is using as well so while everything is there, its hard to know how to make it do anything.

RamblingCTO•10mo ago
Good one! A lib I've used a few times now to build go mcp servers quite quickly would be this one: https://github.com/mark3labs/mcp-go I know, different goals, but still
hagbarth•10mo ago
The same lib is used in this project: https://github.com/TuanKiri/weather-mcp-server/blob/master/g...
asabla•10mo ago
oooooh, thanks for sharing.

It's exactly what I was looking for

log101•10mo ago
Thanks to tools like aider and claude code, these scaffold projects are getting more and more helpful. Just clone it and prompt it for your use case.
ivanvanderbyl•10mo ago
You really don’t need this much to build an MCP server in Go. I built one in a single file: https://github.com/Alcova-AI/perplexity-mcp/blob/main/main.g...
maverwa•10mo ago
I may be failing to understand the protocol here, but the thing it returns for a weather request is intented to be ingested by an LLM, which then uses that information to reply to a user, right? Whats the benefit of adding CSS styling, or even HTML formatting to the output over just a plaintext response? I'd image that adds a lot of unecessary tokens the LM has to grasp?
ricardobeat•10mo ago
The LLM passes the HTML back in their response, translated, so it can be rendered to the user as-is. The tool description is self-explanatory: https://github.com/TuanKiri/weather-mcp-server/blob/master/i...

You could have it respond with JSON, but then the rendering of the weather widget would have to be defined by the consumer instead of the tool server -- now the 'chat' part of your system needs to be aware of all possible content types, how to detect and render them; it's also doable but a different set of trade-offs.

maverwa•10mo ago
Thanks, I should have read the tool description more carefully.