jsdom logo


A JavaScript implementation of the WHATWG DOM and HTML standards, for use with node.js
+ 1

What is jsdom?

It is a pure-JavaScript implementation of many web standards, notably the WHATWG DOM and HTML Standards, for use with Node.js. In general, the goal of the project is to emulate enough of a subset of a web browser to be useful for testing and scraping real-world web applications.
jsdom is a tool in the Headless Browsers category of a tech stack.
jsdom is an open source tool with 19.2K GitHub stars and 1.7K GitHub forks. Here’s a link to jsdom's open source repository on GitHub

Who uses jsdom?

21 companies reportedly use jsdom in their tech stacks, including metamaskbrowser, Front End, and ElonSucks.org.

88 developers on StackShare have stated that they use jsdom.
Pros of jsdom

jsdom's Features

  • Canvas support
  • Encoding sniffing
  • Closing down a jsdom
  • Running jsdom inside a web browser
  • Debugging the DOM using Chrome Devtools

jsdom Alternatives & Comparisons

What are some alternatives to jsdom?
Selenium automates browsers. That's it! What you do with that power is entirely up to you. Primarily, it is for automating web applications for testing purposes, but is certainly not limited to just that. Boring web-based administration tasks can (and should!) also be automated as well.
PhantomJS is a headless WebKit scriptable with JavaScript. It is used by hundreds of developers and dozens of organizations for web-related development workflow.
Enzyme is a JavaScript Testing utility for React that makes it easier to assert, manipulate, and traverse your React Components' output.
Use our cloud-hosted infrastructure to securely run your code on powerful hardware with a single command — without any changes to your code. If you have your own infrastructure, our Enterprise offering provides powerful, easy-to-use cluster management functionality behind your firewall.
Puppeteer is a Node library which provides a high-level API to control headless Chrome over the DevTools Protocol. It can also be configured to use full (non-headless) Chrome.
See all alternatives

jsdom's Followers
51 developers follow jsdom to keep up with related blogs and decisions.