head to head · open source

puppeteer vs d2

puppeteer has 95,618 GitHub stars, 9,580 forks, 259 open issues and last shipped yesterday. d2 has 25,506 stars, 752 forks, 530 open issues and last shipped 5 days ago. puppeteer leads on adoption by 275% (95,618 vs 25,506 stars). puppeteer is written in TypeScript under Apache-2.0; d2 is written in Go under MPL-2.0. puppeteer has attracted 10% as many forks as stars, d2 3%. puppeteer was the more recently maintained of the two, and both are self-hostable with no licence fee. The two share 1 topic tag (developer-tools), so they are genuine substitutes rather than adjacent tools.

Two open source projects, one decision. Both are free and self-hostable — the differences are community size, license terms, language stack and release pace.

puppeteer ★ 96K d2 ★ 26K category Developer Tools

← all 20902 open source comparisons

Side by side

puppeteer d2
GitHub stars ★ 96K ★ 26K
License Apache-2.0 MPL-2.0
Written in TypeScript Go
Last push 2026-09-24 2026-09-20
Forks ⑂ 9.6K ⑂ 752
Self-hosting Yes Yes
Data ownership Your server Your server

pick puppeteer if

  • You weight community size — 96K stars and counting
  • You want the Apache-2.0 license terms
  • Your stack matches TypeScript
  • You value the larger contributor base for long-term maintenance

full puppeteer profile →

pick d2 if

  • You want the d2 feature set and don't need the biggest community
  • You prefer the MPL-2.0 license terms
  • Your stack matches Go
  • You evaluated both and d2 fits your workflow better

full d2 profile →

About puppeteer

Puppeteer is an Apache 2.0 JavaScript and TypeScript library that provides a high level API for driving Chrome and Firefox over the DevTools Protocol or WebDriver BiDi, written for developers who automate browsers from Node.js.

read the full puppeteer overview →

About d2

D2 is a modern diagram scripting language, written in Go and released under the MPL 2.0 licence, that turns plain text .d2 files into rendered diagrams such as SVGs, aimed at developers and teams who want their architecture and system diagrams kept as reviewable source rather than as opaque image files.

read the full d2 overview →

More in Developer Tools

ECC ★ 267K react ★ 251K OpenCode ★ 210K vscode ★ 193K Langflow ★ 155K Supabase ★ 111K

Related comparisons

ecc vs puppeteer openclaw vs langflow ecc vs react ecc vs langflow react vs langflow ecc vs supabase react vs supabase n8n vs langflow openclaw vs openhands openclaw vs paperclip hermes-agent vs pi hermes-agent vs openhands hermes-agent vs paperclip opencode vs pi opencode vs openhands opencode vs paperclip react vs vscode react vs neovim react vs zed opencode vs neovim opencode vs zed vscode vs neovim vscode vs zed react vs kilocode

More Frameworks & Platforms projects

Compare either of these against the rest of the Frameworks & Platforms field.

puppeteer vs ECC puppeteer vs react puppeteer vs Langflow puppeteer vs Supabase puppeteer vs archify puppeteer vs PocketBase puppeteer vs i-have-adhd puppeteer vs codebase-memory-mcp puppeteer vs ToolJet puppeteer vs AppSmith puppeteer vs it-tools puppeteer vs herdr

Frequently asked questions

Is puppeteer or d2 more popular?

puppeteer has 95,618 GitHub stars and d2 has 25,506. puppeteer has the larger community by that measure.

Are puppeteer and d2 free?

Both are open source. puppeteer is licensed under Apache-2.0 and d2 under MPL-2.0. Neither carries a licence fee.

What is the difference between puppeteer and d2?

puppeteer is written in TypeScript and d2 in Go. The practical differences are community size, licence terms, language stack and release cadence — all compared in the table above.

Which should I choose, puppeteer or d2?

Choose puppeteer if you want the larger community (95,618 stars) or its Apache-2.0 licence terms. Choose d2 if its feature set, stack or MPL-2.0 licence fits better. Both are self-hostable.