En el marco del proyecto desarrolla un motor de navegador completamente escrito en Rust y que utiliza algunas contribuciones del proyecto Servo. El código está bajo la licencia MPL 2.0 (Licencia Pública de Mozilla). Para el renderizado se utilizan enlaces OpenGL en el lenguaje Rust. La gestión de ventanas y la creación del contexto OpenGL se realizan a través de la biblioteca . Para el análisis de HTML y CSS se utilizan los componentes y , desarrollados por el proyecto .
El código para trabajar con DOM se basa en los desarrollos del proyecto , que desarrolla una biblioteca para la manipulación de HTML/XML. También se menciona un motor web experimental llamado , que ha estado en un estado semiabandonado durante aproximadamente 5 años.
En la fase actual de desarrollo se proporciona soporte básico para HTML y un conjunto limitado de características CSS, que aún no son suficientes para visualizar la mayoría de las páginas modernas. Sin embargo, en divs con CSS se renderizan correctamente. Inicialmente, el proyecto se fundó hace un año para aprender el proceso de desarrollo de motores de navegador, pero ahora intenta encontrar nuevas áreas de aplicación.
Lo que ya se ha implementado:
- Análisis de HTML, un subconjunto de CSS, CSS en cascada, modelo DOM.
- Renderizado de la página, diseño de contenido por bloques.
- Soporte parcial para el modelo abstracto y propiedades como ««.
- Generación de volcado de depuración con un árbol de elementos visibles.
- Soporte para factores de escala arbitrarios para pantallas de alta densidad de píxeles.
- Renderizado de texto usando la biblioteca FreeType.
- Soporte , formateo dependiente del contexto en línea y renderizado.
Fuente: opennet.ru
