How abraham-ny/quartz works
Origin is a modular rendering engine whose documented workflow is to parse a document, apply CSS styles, calculate layout, and paint a frame; its engine also coordinates networking and JavaScript execution. The graph preserves the separate script parsing, compilation, and runtime layers, plus standalone downloads. The rendering and engine excerpts show the principal calls, but some components have conflicting or incomplete implementations, so uncertain wiring is omitted.
Main entry points: Engine_Final.cs Origin engine · StyleContext.cs Style context · RenderPipeline.cs Render pipeline · VostroEngine.cs JavaScript engine
Components 22
Engine orchestration
- Origin engine
Origin.Core/Engine_Final.cs
Document model
- HTML parser
Origin.DOM/HTMLParser.cs - Document
Origin.DOM/Document.cs - Element tree
Origin.DOM/Element.cs
CSS styling
- Style context
Origin.Styling/StyleContext.cs - CSS parser
Origin.Styling/CssParser.cs - CSS rule parser
Origin.Styling/CssRuleParser.cs - Selector matcher
Origin.Styling/SelectorMatcher.cs - Media queries
Origin.Styling/MediaQuery.cs
Rendering
- Render pipeline
Origin.Rendering/RenderPipeline.cs - Layout engine
Origin.Rendering/LayoutEngine.cs - Flex layout
Origin.Rendering/FlexLayoutEngine.cs - Paint engine
Origin.Rendering/PaintEngine.cs
Script and network
- JavaScript engine
Origin.Vostro/VostroEngine.cs - JavaScript parser
Origin.Vostro/Parser/JavaScriptParser.cs - Syntax tree
Origin.Vostro/Parser/AST/Nodes.cs - JIT compiler
Origin.Vostro/Compiler/JITCompiler.cs - V8 context
Origin.Vostro/Runtime/V8Context.cs - Network manager
Origin.Networking/NetworkManager.cs - Download manager
Origin.Networking/DownloadManager.cs
Other components
- Application user
- HTTP service
Connections 20
- Application user → Origin engine: starts
- Origin engine → Network manager: processes requests
- Origin engine → JavaScript engine: runs tasks
- Origin engine → Render pipeline: renders frame
- HTML parser → Document: builds document
- Document → Element tree: contains tree
- Render pipeline → Style context: recalculates styles
- Style context → Element tree: styles elements
- Render pipeline → Layout engine: calculates layout
- Layout engine → Flex layout: delegates flex
- Render pipeline → Paint engine: paints layout
- JavaScript engine → JIT compiler: compiles script
- JIT compiler → JavaScript parser: parses script
- JavaScript parser → Syntax tree: builds syntax tree
- JavaScript engine → V8 context: executes code
- Network manager → HTTP service: sends requests
- Download manager → HTTP service: downloads content
- CSS parser → CSS rule parser: parses rules
- Style context → Selector matcher: matches selectors
- Style context → Media queries: checks conditions