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

  •        119

jsdom 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.As of v10, jsdom has a new API (documented below). The old API is still supported for now; see its documentation for details.

https://github.com/tmpvar/jsdom

Dependencies:

abab : ^1.0.4
acorn : ^5.3.0
acorn-globals : ^4.1.0
array-equal : ^1.0.0
browser-process-hrtime : ^0.1.2
content-type-parser : ^1.0.2
cssom : >= 0.3.2 < 0.4.0
cssstyle : >= 0.2.37 < 0.3.0
domexception : ^1.0.0
escodegen : ^1.9.0
html-encoding-sniffer : ^1.0.2
left-pad : ^1.2.0
nwmatcher : ^1.4.3
parse5 : ^4.0.0
pn : ^1.1.0
request : ^2.83.0
request-promise-native : ^1.0.5
sax : ^1.2.4
symbol-tree : ^3.2.2
tough-cookie : ^2.3.3
w3c-hr-time : ^1.0.1
webidl-conversions : ^4.0.2
whatwg-encoding : ^1.0.3
whatwg-url : ^6.4.0
ws : ^4.0.0
xml-name-validator : ^3.0.0

Tags
Implementation
License
Platform

   




Related Projects

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

  •    Javascript

jsdom 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. As of v10, jsdom has a new API (documented below). The old API is still supported for now; see its documentation for details.

wpt - Test suites for Web platform specs — including WHATWG, W3C, and others

  •    HTML

The web-platform-tests Project is a W3C-coordinated attempt to build a cross-browser testsuite for the Web-platform stack. Writing tests in a way that allows them to be run in all browsers gives browser projects confidence that they are shipping software that is compatible with other implementations, and that later implementations will be compatible with their implementations. This in turn gives Web authors/developers confidence that they can actually rely on the Web platform to deliver on the promise of working across browsers and devices without needing extra layers of abstraction to paper over the gaps left by specification editors and implementors. Clone or otherwise get https://github.com/web-platform-tests/wpt.

parse5 - HTML parsing/serialization toolset for Node

  •    Javascript

HTML parsing/serialization toolset for Node.js. WHATWG HTML Living Standard (aka HTML5)-compliant.parse5 provides nearly everything you may need when dealing with HTML. It's the fastest spec-compliant HTML parser for Node to date. It parses HTML the way the latest version of your browser does. It has proven itself reliable in such projects as jsdom, Angular2, Polymer and many more.

AngleSharp - The ultimate angle brackets parser library parsing HTML5, MathML, SVG and CSS to construct a DOM based on the official W3C specifications

  •    CSharp

AngleSharp is a .NET library that gives you the ability to parse angle bracket based hyper-texts like HTML, SVG, and MathML. XML without validation is also supported by the library. An important aspect of AngleSharp is that CSS can also be parsed. The included parser is built upon the official W3C specification. This produces a perfectly portable HTML5 DOM representation of the given source code and ensures compatibility with results in evergreen browsers. Also standard DOM features such as querySelector or querySelectorAll work for tree traversal.

jsdom-global - Enable DOM in Node.js

  •    Javascript

jsdom-global will inject document, window and other DOM API into your Node.js environment. Useful for running, in Node.js, tests that are made for browsers.Requires jsdom.


Apricot - A simple Hpricot Clone for nodejs.

  •    Javascript

Apricot is a HTML / DOM parser, scraper for Nodejs. It is inspired by rubys hpricot and designed to fetch, iterate, and augment html or html fragments. Parse and Open both return a Apricot Object, a HTML DOM, created by JSDOM, with all the power of the Sizzle Selector Engine, and XUI Framework for Augmentation.

SwiftSoup - SwiftSoup: Pure Swift HTML Parser, with best of DOM, CSS, and jquery (Supports Linux, iOS, Mac, tvOS, watchOS)

  •    Swift

SwiftSoup is a pure Swift library, cross-platform(macOS, iOS, tvOS, watchOS and Linux!), for working with real-world HTML. It provides a very convenient API for extracting and manipulating data, using the best of DOM, CSS, and jquery-like methods. SwiftSoup implements the WHATWG HTML5 specification, and parses HTML to the same DOM as modern browsers do. After parsing a document, and finding some elements, you'll want to get at the data inside those elements.

XPDOM - Cross-Platform W3C-DOM-2

  •    Javascript

XPDOM (Cross-Platform DOM) is a W3C-DOM Level 2 compatibility layer to programming Dynamic HTML in standard DOM and exactly same way in most popular browsers with DHTML: MSIE 4+ and Netscape 6+/Mozilla/Firefox as reference implementation

xmldom - A PURE JS W3C Standard based(XML DOM Level2 CORE) DOMParser and XMLSerializer.

  •    Javascript

A JavaScript implementation of W3C DOM for Node.js, Rhino and the browser. Fully compatible with W3C DOM level2; and some compatible with level3. Supports DOMParser and XMLSerializer interface such as in browser.

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

  •    Javascript

❤ Familiar syntax: Cheerio implements a subset of core jQuery. Cheerio removes all the DOM inconsistencies and browser cruft from the jQuery library, revealing its truly gorgeous API.ϟ Blazingly fast: Cheerio works with a very simple, consistent DOM model. As a result parsing, manipulating, and rendering are incredibly efficient. Preliminary end-to-end benchmarks suggest that cheerio is about 8x faster than JSDOM.

W3C DOM Conformance Test Suites

  •    

The W3C Conformance DOM Test Suites aims at creating as comprehensive and complete tests as possible for the various levels of the DOM specifications. The DOM TS webpage can be found at http://www.w3.org/DOM/Test.

jest-dom - :owl: Custom jest matchers to test the state of the DOM

  •    Javascript

You want to use jest to write tests that assert various things about the state of a DOM. As part of that goal, you want to avoid all the repetitive patterns that arise in doing so. Checking for an element's attributes, its text content, its css classes, you name it. The @testing-library/jest-dom library provides a set of custom jest matchers that you can use to extend jest. These will make your tests more declarative, clear to read and to maintain.

html - HTML Standard

  •    HTML

This repository hosts the HTML Standard. We are committed to providing a friendly, safe and welcoming environment for all. Please read and respect the WHATWG Code of Conduct.

document-register-element - A stand-alone working lightweight version of the W3C Custom Elements specification

  •    Javascript

A stand-alone lightweight version of Custom Elements V1 based on top, and compatible with, the battle-tested Custom Elements V0, already used in production with projects such Google AMP HTML ⚡ and others. If you specify noBuiltIn property as true, the V1 API will be polyfilled where needed, but no extra checks and patches will be applied to make custom elements built-in working, since no browser is currently shipping this part of the specification.

HTMLReader - A WHATWG-compliant HTML parser in Objective-C.

  •    HTML

A WHATWG-compliant HTML parser with CSS selectors in Objective-C and Foundation. It parses HTML just like a browser. Copy the files in the Sources folder into your project.

dom-testing-library - 🐙 Simple and complete DOM testing utilities that encourage good testing practices

  •    Javascript

Simple and complete DOM testing utilities that encourage good testing practices. You want to write maintainable tests for your Web UI. As a part of this goal, you want your tests to avoid including implementation details of your components and rather focus on making your tests give you the confidence for which they are intended. As part of this, you want your testbase to be maintainable in the long run so refactors of your components (changes to implementation but not functionality) don't break your tests and slow you and your team down.

dom-testing-library - 🐙 Simple and complete DOM testing utilities that encourage good testing practices

  •    Javascript

Simple and complete DOM testing utilities that encourage good testing practices. You want to write maintainable tests for your Web UI. As a part of this goal, you want your tests to avoid including implementation details of your components and rather focus on making your tests give you the confidence for which they are intended. As part of this, you want your testbase to be maintainable in the long run so refactors of your components (changes to implementation but not functionality) don't break your tests and slow you and your team down.

EventListenerOptions - An extension to the DOM event pattern to allow authors to disable support for preventDefault

  •    Javascript

This work is now part of the official WHATWG DOM spec. Please file any issues/pull requests there. This repository (and its resources / discussions) are only preserved here as an archive. An extension to the DOM event pattern to allow listeners to disable support for preventDefault, primarily to enable scroll performance optimizations. See the explainer document for an overview.

tobi - Tobi: Expressive server-side functional testing with jQuery

  •    Javascript

Expressive server-side functional testing with jQuery and jsdom. Tobi allows you to test your web application as if it were a browser. Interactions with your app are performed via jsdom, htmlparser, and jQuery, in combination with Tobi's Cookie Jar, provides a natural JavaScript API for traversing, manipulating and asserting the DOM, and session based browsing.

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

  •    Javascript

Simple and complete React DOM testing utilities that encourage good testing practices. You want to write maintainable tests for your React components. As a part of this goal, you want your tests to avoid including implementation details of your components and rather focus on making your tests give you the confidence for which they are intended. As part of this, you want your testbase to be maintainable in the long run so refactors of your components (changes to implementation but not functionality) don't break your tests and slow you and your team down.