Skip to content
Dart port of html5lib. For parsing HTML/HTML5 with Dart. Works in the client and on the server.
Dart HTML Shell
Find file
New pull request
Fetching latest commit...
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
test Add Element.endSourceSpan

html5 parser in dart

This is a pure Dart html5 parser. It's a port of html5lib from Python. Since it's 100% Dart you can use it safely from a script or server side app.

Eventually the parse tree API will be compatible with dart:html, so the same code will work on the client and the server.

(Formerly known as html5lib.)


Add this to your pubspec.yaml (or create it):

  html: any

Then run the Pub Package Manager (comes with the Dart SDK):

pub install


Parsing HTML is easy!

import 'package:html/parser.dart' show parse;
import 'package:html/dom.dart';

main() {
  var document = parse(
      '<body>Hello world! <a href="">HTML5 rocks!');

You can pass a String or list of bytes to parse. There's also parseFragment for parsing a document fragment, and HtmlParser if you want more low level control.

Running Tests

Something went wrong with that request. Please try again.