Source: https://seerepo.com/compare/oblien/openship/vs/TryGhost/Ghost
Markdown source: https://seerepo.com/compare/oblien/openship/vs/TryGhost/Ghost.md
Description: openship and Ghost share 26 technologies: Hono, React, React Router, bullmq, Stripe, jose, nodemailer, Zod, Tailwind CSS, class-variance-authority, tailwind-merge, xyflow, recharts, Radix UI, country-flag-icons, sonner, tiptap, React Hook Form, cmdk, dnd-kit, react-day-picker, Lucide, dompurify, sanitize-html, @hookform/resolvers, and Cheerio. Both are written in TypeScript.

# openship vs Ghost

openship and Ghost share 26 technologies: Hono, React, React Router, bullmq, Stripe, jose, nodemailer, Zod, Tailwind CSS, class-variance-authority, tailwind-merge, xyflow, recharts, Radix UI, country-flag-icons, sonner, tiptap, React Hook Form, cmdk, dnd-kit, react-day-picker, Lucide, dompurify, sanitize-html, @hookform/resolvers, and Cheerio. Both are written in TypeScript.

- [oblien/openship](https://seerepo.com/r/oblien/openship): Self-hosted deployment platform
- [TryGhost/Ghost](https://seerepo.com/r/TryGhost/Ghost): Independent technology for modern publishing, memberships, subscriptions and newsletters.

## What they share and what sets them apart

- In common: Hono, React, React Router, bullmq, Stripe, jose, nodemailer, Zod, Tailwind CSS, class-variance-authority, tailwind-merge, xyflow, recharts, Radix UI, country-flag-icons, sonner, tiptap, React Hook Form, cmdk, dnd-kit, react-day-picker, Lucide, dompurify, sanitize-html, @hookform/resolvers, Cheerio
- Only in openship: @electric-sql/pglite, Redis, Socket, Next.js, Electron, idb-keyval, @trpc/server, tRPC, aws-sdk, Postgres, GitHub, Drizzle, Better Auth, yaml, @sinclair/typebox, dockerode, @hono/node-server, @clack/prompts, ora, PostCSS, xterm, @streamdown/code, Chart.js, react-chartjs-2, use-stick-to-bottom, qrcode.react, streamdown, next-themes, motion, react-hotkeys-hook, ProseMirror, tiptap-markdown, input-otp, prosemirror-model, react-resizable-panels, vaul, virtua, @react-email/components, email-addresses, imapflow, mailparser, github.com/sirupsen/logrus, github.com/moby/moby/client
- Only in Ghost: Vite, Preact, bson-objectid, Sentry, Express, @isaacs/ttlcache, cache-manager, lru-cache, Mailgun, js-yaml, html2canvas-pro, @codemirror/theme-one-dark, CodeMirror, @uiw/react-codemirror, @floating-ui/react-dom, @tanstack/react-virtual, D3, papaparse, validator, Headless UI, @number-flow/react, react-dropzone, knex, jsonwebtoken, express-session, otplib, cookie-session, handlebars, sharp, entities, file-type, image-size, html-to-text, node-html-markdown, probe-image-size, rss, cron-validate, lexical, markdown-it, markdown-it-footnote, markdown-it-mark, markdown-it-sub, markdown-it-sup, emoji-mart, @lezer/highlight, react-colorful, react-error-boundary, @lexical/markdown, prop-types, Ajv, ajv-formats

## Side by side

| | openship | Ghost |
|---|---|---|
| Size | 1,188,172 lines written, 3,588 code files | 1,229,446 lines written, 4,191 code files |
| Who writes it | 5.2% of its commits signed by AI. With Claude Code, Codex, and Cursor | 1.5% of its commits signed by AI. With Codex, Claude Code, Cursor, CodeRabbit, and GitHub Copilot |
| Activity | Last push November 8, 2026, 1,844 commits, 15,232 stars | Last push November 5, 2026, 51,839 commits, 55,684 stars |
| Tests | 2,046 test files. 47.7% of its code files have a test that imports them | 2,676 test files. 39.8% of its code files have a test that imports them |

- Size: Lines written by people and agents, without generated ones; code files, without tests.
- Who writes it: A commit counts as AI's when it carries its signature: a Co-Authored-By line, its author name or the merge of its branch.
- Activity: From GitHub and its history, on the day SeeRepo read it.
- Tests: The files that test the code, and the share of code files a test imports.

## Frequently asked questions

### Which is bigger, openship or Ghost?

Ghost, with 1,229,446 lines written; openship has 1,188,172.

The proof: [TryGhost/Ghost's code at commit 7336dc2](https://github.com/TryGhost/Ghost/tree/7336dc28b3ac6e4351c24b0b93ce03700d32a8e8)

### Which has more GitHub stars, openship or Ghost?

Ghost, with 55,684 stars; openship has 15,232.

The proof: [TryGhost/Ghost on GitHub](https://github.com/TryGhost/Ghost)

### Which has more tests, openship or Ghost?

Ghost, with 2,676 test files; openship has 2,046.

The proof: [TryGhost/Ghost's code at commit 7336dc2](https://github.com/TryGhost/Ghost/tree/7336dc28b3ac6e4351c24b0b93ce03700d32a8e8)

### Which was updated more recently, openship or Ghost?

openship: its last push was on November 8, 2026, and Ghost's on November 5, 2026.

The proof: [oblien/openship's commits on GitHub](https://github.com/oblien/openship/commits)

### Which has more commits signed by AI, openship or Ghost?

openship: an AI signed 5.2% of its commits, with Claude Code, Codex, and Cursor; in Ghost, 1.5%.

The proof: [the commits each tool signed in oblien/openship](https://seerepo.com/r/oblien/openship/ai)

## Sources

- oblien/openship: Read on November 8, 2026, at commit ef893be (https://github.com/oblien/openship/tree/ef893be5da2afa84cfa50a4cfc7fd683eaf28074)
- TryGhost/Ghost: Read on November 5, 2026, at commit 7336dc2 (https://github.com/TryGhost/Ghost/tree/7336dc28b3ac6e4351c24b0b93ce03700d32a8e8)

## What is your repo built with?

Any public repo, with no account: https://seerepo.com/r/owner/repo/built, with the owner and name it has on GitHub.
