Presentato il motore di navigazione Kosmonaut, scritto in linguaggio Rust

Nell'ambito del progetto Kosmonaut si sta sviluppando un motore di navigazione scritto interamente in Rust e che utilizza alcune funzionalità del progetto Servo. Il codice è distribuito è sotto licenza MPL 2.0 (Mozilla Public License). Per il rendering vengono utilizzati legami OpenGL gl-rs in Rust. La gestione delle finestre e la creazione del contesto OpenGL sono realizzate grazie alla libreria Glutin. Per l'analisi di HTML e CSS vengono utilizzati i componenti html5ever e cssparser, sviluppati dal progetto Servo.
Il codice per lavorare con il DOM è basato su lavori del progetto Kuchiki, che sviluppa una libreria per la manipolazione di HTML/XML. Tra i progetti utilizzati è inoltre menzionato un motore web sperimentale Robinson, che è in uno stato semi-abbandonato da circa 5 anni.

Attualmente, è garantito un supporto di base per HTML e un insieme limitato di funzionalità CSS, che non sono ancora sufficienti per visualizzare la maggior parte delle pagine moderne. Tuttavia pagine semplici basate su div con CSS vengono renderizzate correttamente. Il progetto è stato originariamente fondato un anno fa per insegnare il processo di sviluppo di motori di navigazione, ma ora cerca di trovare nuove nicchie applicative.

Cosa è già stato realizzato:

  • Analisi HTML, un sottoinsieme di CSS, CSS a cascata, modello DOM.
  • Rendering della pagina, layout a blocchi del contenuto.
  • Supporto parziale per una box-modello e proprietà «direction«.
  • Creazione di dump di debug con l'albero degli elementi visualizzati.
  • Supporto per fattori di scala arbitrari per schermi High-DPI.
  • Rendering del testo tramite la libreria FreeType.
  • Supporto Flow Layout, formattazione e rendering inline dipendenti dal contesto.

Fonte: opennet.ru

Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server 🔥 Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server | ProHoster