Source: https://seerepo.com/compare/toeverything/AFFiNE/vs/TryGhost/Ghost
Markdown source: https://seerepo.com/compare/toeverything/AFFiNE/vs/TryGhost/Ghost.md
Description: AFFiNE and Ghost share 4 technologies: React, Vite, Express, and Sentry. Both are written in TypeScript.

# AFFiNE vs Ghost

AFFiNE and Ghost share 4 technologies: React, Vite, Express, and Sentry. Both are written in TypeScript.

- [toeverything/AFFiNE](https://seerepo.com/r/toeverything/AFFiNE): There can be more than Notion and Miro. AFFiNE(pronounced [ə‘fain]) is a next-gen knowledge base that brings planning, sorting and creating all together. Privacy first, open-source, customizable and ready to use. 
- [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: React, Vite, Express, Sentry
- Only in AFFiNE: Redis, Postgres
- Only in Ghost: Stripe

## Side by side

| | AFFiNE | Ghost |
|---|---|---|
| Size | 1,015,236 lines written, 7,022 code files | 1,186,187 lines written, 4,136 code files |
| Who writes it | 0.1% of its commits signed by AI. With CodeRabbit, Devin, and GitHub Copilot | 1.5% of its commits signed by AI. With Codex, Claude Code, Cursor, CodeRabbit, and GitHub Copilot |
| Activity | Last push October 27, 2026, 10,950 commits, 73,902 stars | Last push October 28, 2026, 51,560 commits, 55,626 stars |
| Tests | 772 test files. 10.3% of its code files have a test that imports them | 2,568 test files. 38.9% 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, AFFiNE or Ghost?

Ghost, with 1,186,187 lines written in 4,136 code files; AFFiNE has 1,015,236 in 7,022.

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

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

AFFiNE, with 73,902 stars; Ghost has 55,626.

The proof: [toeverything/AFFiNE on GitHub](https://github.com/toeverything/AFFiNE)

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

Ghost, with 2,568 test files; AFFiNE has 772.

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

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

Ghost: its last push was on October 28, 2026, and AFFiNE's on October 27, 2026.

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

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

Ghost: an AI signed 1.5% of its commits, with Codex, Claude Code, Cursor, CodeRabbit, and GitHub Copilot; in AFFiNE, 0.1%.

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

## Sources

- toeverything/AFFiNE: Read on October 27, 2026, at commit 8cef09e (https://github.com/toeverything/AFFiNE/tree/8cef09e1dd62b47a3cbc9f352aa10b3a90c75d34)
- TryGhost/Ghost: Read on October 28, 2026, at commit b14830a (https://github.com/TryGhost/Ghost/tree/b14830aee6b627923229c558dab69abd3a392751)

## 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.
