Readable: good indentation, good organization exhibited in DOM stucture.
Semantic (meaningful) tags. If a tag's name is not descriptive (e.g., <div>) but is important semantically, use a class, id, or write an HTML comment that explains the tag's purpose.
Efficient: Remove redundacy -- repeated DOM structures should be templated and/or programmatically created using JS.
Contains lists
At least one <a> that links to an external site
At least one <img> or background-image
At least one <video> with at least two <source> child elements, and video content. Alternatively, you may use an <iframe> and embed an external video source such as YouTube, but if so, you must create the video content yourself and upload it to that external source, and in your app's README.md, describe how you uploaded the video. In either case, describe the purpose of your video in your app's README.md
At least one <canvas> element, with data rendered in the canvas. Uses a charting library or your own drawing routines. Alternatively, you can use an SVG image instead of <canvas>, and use SVG paths to draw plots.
class
,id
, or write an HTML comment that explains the tag's purpose.