Menu

Post image 1
Post image 2
Post image 3
1 / 3
0

Building a Plugin System in Go Without `plugin`: 3 Patterns That Actually Ship

DEV Community·Gabriel Anhaia·27 days ago
#P5ldgI0H
Reading 0:00
15s threshold

Book: Hexagonal Architecture in Go Also by me: Thinking in Go (2-book series) — Complete Guide to Go Programming + Hexagonal Architecture in Go My project: Hermes IDE | GitHub — an IDE for developers who ship with Claude Code and other AI coding tools Me: xgabriel.com | GitHub A team I know of shipped a release where one line in the notes mattered more than the rest: "now loads auth checks as Go plugins." They had reached for the stdlib plugin package because the docs are right there, the API is one function call, and the demo in every blog post makes it look easy. The rollout did not go well. A plugin built on one machine refused to load on hosts running a slightly different Go patch version, and the error was a hash mismatch with no graceful fallback. They ended up deleting the plugin code and shipping a hot-reload-disabled build to recover. Go's stdlib plugin package is the wrong default for almost every team that reaches for it. It only works on Linux, macOS, and FreeBSD.…

Continue reading — create a free account

Join HashtagPLUS to read full articles, follow hashtags, vote, and join the conversation.

Read More