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 order of their implementation.
Legend#
: There is no need to return to this item. Done is done.
: Continually in development; can already be used.
If status is not given, the work hasn't started yet.
DOM#
- DOM Interfaces:
- DOM Events
HTML#
- HTML Parser:
- HTML Interfaces:
- Custom Elements
- Queuing a mutation record
CSS#
- Syntax:
- Grammar: for generating CSS tests by grammars.
- Namespaces:
- Selectors:
- CSSOM:
- Values:
- Sizing:
- Box:
- Display:
- Float:
- Font:
- Text:
- Position:
- Color:
- Flexbox:
- Background:
- Content
- Overflow:
- Media Queries
- Page
- Variables
Fonts, OpenType#
- 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#
- Encoding:
- Prescanning a byte stream to determine its encoding:
URL#
- URL:
1.1. Parsing:
1.2. Punycode:
Unicode#
- http://www.unicode.org/:
1.1. Normalization forms:
1.2. Unicode IDNA Compatibility Processing:
Layout#
- Building a rendering tree - now we're at that stage.