remark-gfm

npm package · declared by 118 of 2,343 sampled repositories · graph computed 2026-08-24

Counted from the runtime dependencies public repositories declare — not the resolved tree. A transitive dependency is a consequence; a declared one is a choice. Development dependencies are excluded because they repeat across every project in a language regardless of what is being built.

Declared with

ranked by association, not by count
Tools declared alongside this one, ranked by association strength
Declared withRepositoriesvs chance
react-markdown42 of 2,3430.84
rehype-raw15 of 2,3430.71
rehype-sanitize12 of 2,3430.70
remark-math16 of 2,3430.70
rehype-katex15 of 2,3430.69
rehype-highlight9 of 2,3430.65
katex11 of 2,3430.51
lucide-react32 of 2,3430.51
gray-matter9 of 2,3430.47
react-dom50 of 2,3430.46
tailwindcss13 of 2,3430.46
zustand13 of 2,3430.45
react50 of 2,3430.45
react-router-dom12 of 2,3430.43
next30 of 2,3430.43
react-icons10 of 2,3430.41
@radix-ui/react-slot13 of 2,3430.41
postcss9 of 2,3430.40
@radix-ui/react-dialog9 of 2,3430.37
@vercel/analytics8 of 2,3430.37

Every pair above is counted from the same evidence: repo manifest.

Used instead

candidates · shares a neighbourhood and refuses to co-occur

No alternative measured. A pair qualifies only if it shares a neighbourhood and then fails to appear together against an expectation that it would — and almost everything that shares a neighbourhood does appear together. That is the test working, not a gap in the data: similarity alone would list this tool’s closest neighbours as alternatives, and most of them are things it is used with.