Roadmap

This section lists the most important modules involved in creating a browser engine. The list will grow over time.

Specific list items appear in their respective sections (DOM, HTML, etc.) in the order of their implementation.

Legend

  • Done: There is no need to revisit this item; it is complete.

  • In Progress: Continually in development but available for use.

  • If no status is given, the work has not yet started.

DOM

  1. DOM Interfaces: In Progress

  2. DOM Events

HTML

  1. HTML Parser: Done

  2. HTML Interfaces: In Progress

  3. Custom Elements

  4. Queuing a mutation record

CSS

  1. Syntax:Done

  2. Grammar: for generating CSS tests by grammars. Done

  3. Namespaces: Done

  4. Selectors: Done

  5. CSSOM: In Progress

  6. Values: In Progress

  7. Sizing: In Progress

  8. Box: In Progress

  9. Display: In Progress

  10. Float: In Progress

  11. Font: In Progress

  12. Text: In Progress

  13. Position: In Progress

  14. Color: In Progress

  15. Flexbox: In Progress

  16. Background: In Progress

  17. Content

  18. Overflow: In Progress

  19. Media Queries

  20. Page

  21. Variables

Fonts, OpenType

  1. Font/OpenType
    1.1. Parsing OpenType font files
    1.2. Calculating font metrics for glyphs in HTML layout: baseline, ascender, descender, line-gap, x-height, cap-height, width, height

Encodings

  1. Encoding: Done

  2. Prescanning a byte stream to determine its encoding: Done

URL

  1. URL: Done
    1.1. Parsing: Done
    1.2. Punycode: Done

Unicode

  1. http://www.unicode.org/: Done
    1.1. Normalization forms: Done
    1.2. Unicode IDNA Compatibility Processing: Done

Layout

  1. Building a rendering tree: we’re at this stage right now.