The browser DOM serves its purpose—representing complex webpages—very well. But its huge scope and loose structure makes it difficult to make assumptions about. A document model that represents a smaller set of documents can be easier to reason about.

This demo implements a simple document linter that finds problems in your document, and makes it easy to fix them.

The source code for this example can be found on github.