Browser-motoren Kosmonaut, skrevet i Rust, er blevet præsenteret

Som en del af projektet Kosmonaut er en browsermotor, der er helt skrevet i Rust og bruger nogle af de erfaringer, der er opnået fra projektet Servo. Koden distribueres er under MPL 2.0-licensen (Mozilla Public License). For rendering anvendes OpenGL-bindings gl-rs i Rust. Vindueshåndtering og oprettelse af OpenGL-kontekster er implementeret af biblioteket Glutin. Til parsning af HTML og CSS anvendes komponenter html5ever og cssparser, der udvikles af projektet Servo.
Koden til DOM-manipulation er baseret på erfaringerne fra projektet Kuchiki, der udvikler et bibliotek til manipulation af HTML/XML. Blandt de anvendte projekter nævnes også den eksperimentelle webmotor Robinson, som har været delvist forladt i omkring 5 år.

På det nuværende udviklingstrin er der givet grundlæggende støtte til HTML og et begrænset sæt af CSS-funktioner, hvilket stadig ikke er tilstrækkeligt til at vise de fleste moderne sider. Alligevel enkelte sider baseret på div'er med CSS rendererer korrekt. Projektet blev oprindeligt etableret for et år siden som en læringsproces til udviklingen af browsermotorer, men søger nu efter nye anvendelsesområder.

Hvad der allerede er realiseret:

  • Parsing af HTML, et subset af CSS, kaskaderende CSS, DOM-modellen.
  • Rendering af sider, bloklayout af indhold.
  • Delvis støtte til den abstrakte box-model og egenskaberne "direction«.
  • Generering af debug-dumps med træet af displayed elements.
  • Support for custom scaling factors for High-DPI displays.
  • Rendering af tekst ved hjælp af FreeType-biblioteket.
  • Support Flow Layout, kontekstafhængig inline-formattering og rendering.

Kilde: opennet.ru

Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere 🔥 Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere | ProHoster