finds.dev← search

// the find

TryGhost/Ghost

★ 53,937 · JavaScript · MIT · updated Jun 2026

Independent technology for modern publishing, memberships, subscriptions and newsletters.

Ghost is a mature Node.js CMS for independent publishers who want memberships, newsletters, and a hosted site without Substack's cut. It's been in production for over a decade and is actively maintained by a non-profit foundation. Self-hosting works, but the product is clearly designed to funnel you toward Ghost(Pro).

The ActivityPub integration is a genuine technical bet — Ghost is one of the few traditional CMSes actually federating with the open social web, and the implementation (see apps/activitypub) is a full React app with its own test suite, not a bolted-on afterthought. The CLI installer does what it promises: 'ghost install local' gets you running in under a minute, and the production path handles LetsEncrypt automatically — rare for self-hosted software. The monorepo has real structure: ADRs committed at the root, skill docs for AI agents under .agents/, devcontainer config, migration integrity checks in CI, and Playwright e2e tests separated from unit tests. Token usage is tracked and the multi-app NX workspace doesn't hide complexity behind opaque tooling.

The managed service pitch is aggressive — every third paragraph in the README reminds you Ghost(Pro) exists, and the pricing is steep for indie creators who are exactly the target audience. The Node.js runtime is a poor fit for a high-traffic content server: memory overhead is real and you'll need more VPS than the equivalent PHP stack for the same load. The ActivityPub feature is still heavily feature-flagged and the fediverse bet could go sideways if adoption stalls — you're taking on that architectural complexity now with uncertain payoff. The NX monorepo with dozens of sub-packages makes first-time contributor setup genuinely painful; the CONTRIBUTING.md points to separate dev setup docs that themselves have prerequisites, and there's no single command to validate your environment.

View on GitHub → Homepage ↗

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →