linkedom VS jsdom

Compare linkedom vs jsdom and see what are their differences.


A triple-linked lists based DOM implementation. (by WebReflection)


A JavaScript implementation of various web standards, for use with Node.js (by jsdom)
Our great sponsors
  • Appwrite - The Open Source Firebase alternative introduces iOS support
  • SonarQube - Static code analysis for 29 languages.
  • Scout APM - Less time debugging, more time building
linkedom jsdom
10 28
823 17,369
- 1.0%
8.2 6.4
13 days ago 21 days ago
HTML JavaScript
ISC License MIT License
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.


Posts with mentions or reviews of linkedom. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2022-03-03.


Posts with mentions or reviews of jsdom. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2022-04-29.
  • Error: Not implemented: HTMLFormElement.prototype.submit
    1 project | | 3 May 2022
    const renderCard = ({ onSubmit = jest.fn(),}: RenderCardParams = {}) => { return render( Save , );}; it("should invoke onSubmit when form is submitted", async () => { const onSubmit = jest.fn(); window.HTMLFormElement.prototype.submit = () => {}; const { getByText } = renderCard({ onSubmit }); const button = getByText("Save").closest("button"); if (button) {; } await wait(() => expect(onSubmit).toHaveBeenCalled()); }); I am receiving "Error: Not implemented: HTMLFormElement.prototype.submit". I tried the solution mentioned here , but it did not work. I do not want to silence the errors but implement the test correctly. Thank you.
  • PurgeCSS & styled-components: Does It Work?
    17 projects | | 29 Apr 2022
    This project is very interesting. It actually solves the problem of excess CSS the best; it does so by loading your HTML into jsdom, and then querySelector-ing all of the selectors found in your CSS against the emulated DOM. If a selector isn't found in the emulated DOM, UnCSS will not include the CSS rule in its output.
  • Robin: An XML/HTML Parser and Library
    2 projects | | 23 Apr 2022
    You should probably add a section to the README explaining why this is useful compared to the alternatives. For example, DOMParser which is built into a web browser, or JSDOM which is the most popular and comprehensive Node in-memory DOM implementation.
  • Mesh Importing
    5 projects | | 19 Apr 2022
  • How to test a component with a nested container with React and Redux?
    1 project | | 4 Apr 2022
    Due to the complexity of the application I am working on I have decided on using a nested redux container rather than passing an action as a prop down to the child components. However, this has proved to be problematic for unit testing when rendering the OuterContainer with jsdom in combination with mocha, chai and sinon.
  • Setup Jest to React Typescript Vite project, also SWC (part 1)
    13 projects | | 14 Mar 2022
    Everything you want to do to your test environment such as extends the jest matchers with @testing-library/jest-dom, mock some APIs that’s not implemented in jdom, you can put to config/jest/setupTests.js:
  • Testing your Solid.js code in vitest
    5 projects | | 22 Feb 2022
    You may have heard of vite, the slim fast dev server that scored an amazing as deserved 98% satisfaction on the state of js survey 2021. It's creators found unit testing too cumbersome and slow and decided to add their own perspective to the task. The result is vitest: it runs a vite server under the hood to transform the code to test as fast as possible, uses an enhanced flavor of chai to have jest-compatible assertions, integrates DOM mocking using jsdom or happy-dom and even the tiny-spy library that was just built as a separate library to allow for easy reuse is small and compatible with jest.
  • Emulating dom server side?
    1 project | | 3 Dec 2021
    I think jsdom is what you want to look into.
  • Testing Solid.js code beyond jest
    7 projects | | 24 Oct 2021
    jsdom, full-featured, but slow, the default option in jest
  • Developing and Testing Web Components
    4 projects | | 13 Oct 2021
    The next consideration I addressed was being able to easily write and run unit tests for vue-uhtml components. Having previously talked about a unit testing approach for Vue.js components, I was keen to apply the principle of “writing tests that assert your component’s public interface”. Before I could even think about writing component tests, I had to pick the most appropriate and well supported tooling. Vue’s documentation on testing and own vue-test-utils package makes this choice a foregone conclusion with Jest as a comprehensive test framework, and using vue-test-util’s wrapper based API to mount components in an isolated jsdom environment. While jsdom has provided a Custom Elements implementation since version 16, other Web Components APIs including Shadow DOM are not supported or reliable enough to be useful.

What are some alternatives?

When comparing linkedom and jsdom you can also consider the following projects:

cheerio - Fast, flexible, and lean implementation of core jQuery designed specifically for the server.

happy-dom - Happy DOM is a JavaScript implementation of a web browser without its graphical user interface. It includes many web standards from WHATWG DOM and HTML.

Electron - :electron: Build cross-platform desktop apps with JavaScript, HTML, and CSS

webworker-threads - Lightweight Web Worker API implementation with native threads

Prettyprint Object - Function to pretty-print an object with an ability to annotate every value.

vite - Next generation frontend tooling. It's fast!

simplecrawler - Flexible event driven crawler for node.

HTMLKit - An Objective-C framework for your everyday HTML needs.

clipboardy - Access the system clipboard (copy/paste)

react-testing-library - 🐐 Simple and complete React DOM testing utilities that encourage good testing practices.

CalDOM - An agnostic, reactive & minimalist (3kb) JavaScript UI library with direct access to native DOM.