Clone this repo:
  1. 143e79e Remove a fixed size list creation (#138) by Nate Bosch · 9 days ago master null_safety
  2. d250978 Drop unused lastPhase and beforeRcDataPhase fields (#137) by Nate Bosch · 9 days ago
  3. ee5f00d Remove Marker as a name for null (#136) by Nate Bosch · 11 days ago
  4. 3949271 Use Object in place of dynamic (#134) by Nate Bosch · 2 weeks ago
  5. ffde103 Remove unused field _lineStarts (#133) by Nate Bosch · 2 weeks ago

This is a pure Dart HTML5 parser. It's a port of html5lib from Python.

Usage

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="www.html5rocks.com">HTML5 rocks!');
  print(document.outerHtml);
}

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.