Gli sviluppatori del sistema operativo SerenityOS hanno presentato il browser web cross-platform Ladybird, basato sul motore LibWeb e sull'interprete JavaScript LibJS, la cui sviluppo è in corso dal 2019. L'interfaccia grafica è basata sulla libreria Qt. Il codice è scritto in C++ e distribuito sotto licenza BSD. È supportato il funzionamento su Linux, macOS, Windows (WSL) e Android.
L'interfaccia è progettata in uno stile classico e supporta le schede. Il browser è costruito utilizzando il proprio stack web, che oltre a LibWeb e LibJS include una libreria per il rendering del testo e della grafica 2D LibGfx, un motore per le espressioni regolari LibRegex, un parser XML LibXML, un interprete per il codice intermedio WebAssembly (LibWasm), una libreria per la gestione di Unicode LibUnicode, una libreria per la conversione dei codici di testo LibTextCodec, un parser per il markup Markdown (LibMarkdown) e la libreria LibCore con un insieme di funzioni utili, come la conversione di tempo, I/O e gestione dei tipi MIME.
Il browser supporta i principali standard web e supera con successo i test Acid3. Supporta i protocolli HTTP e HTTPS. Tra i piani futuri si menziona l'implementazione del supporto per modalità di funzionamento multi-processo, in cui ogni scheda viene gestita in un processo diverso, oltre a ottimizzazioni delle prestazioni e l'implementazione di funzionalità avanzate, come CSS flexbox e CSS grid.
Inizialmente, il progetto è stato creato a luglio come una cornice funzionante su Linux per il debug dello stack web del sistema operativo SerenityOS, che sta sviluppando il proprio browser SerenityOS Browser. Ma dopo un po' di tempo è diventato chiaro che lo sviluppo era andato oltre l'utilità di debug e poteva essere utilizzato come un normale browser (il progetto è ancora in fase di sviluppo e non è pronto per un uso quotidiano). Lo stack web si è anche trasformato da sviluppo specifico per SerenityOS in un motore di browser cross-platform.

Fonte: opennet.ru
