Skip to content
HarpeLmPublic

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

65 Commits

Folders and files

Repository files navigation

Lumen

Un navigateur web écrit de zéro en Rust, brique par brique. Chaque brique est un crate de ce workspace, testé contre les suites officielles (html5lib, WPT…) puis optimisé en mesurant.

Brique Dossier État
Parser HTML (tokenizer, arbre DOM) html/ ✅ v0.1 : 100 % html5lib et WPT, plus rapide que html5ever
Parser CSS : sélecteurs, couleurs, valeurs, @media, var() css/ ✅ 8 338 / 8 338 tests officiels, sélecteurs identiques à Servo, propriétés, media queries et var() identiques à Chromium, tokenizer au niveau de cssparser
Cascade CSS : style calculé de chaque élément style/ ✅ identique à Chromium : 1 006 715 / 1 006 715 valeurs (22 propriétés) sur 5 vraies pages, shadow DOM compris ; au niveau de Stylo (Firefox) en vitesse
Mise en page : blocs et texte layout/ 🚧 identique à Chromium sur les pages de test (292 / 292 boîtes de blocs, 187 / 187 avec texte) ; flottants, flexbox, tableaux à venir
Polices : lecture TrueType/OpenType, mesure du texte, crénage font/ 🚧 mesures identiques à Chromium (495 / 495) ; ligatures et dessin des glyphes à venir
Rendu, réseau, JavaScript… — à venir

Démarrer

git clone --recurse-submodules https://github.com/HarpeLm/lumen.git
cd lumen
cargo test                    # tous les tests de toutes les briques

Chaque brique a son propre README (tests, benchmarks, limites) : html/README.md.

Licence

Au choix : Apache 2.0 ou MIT. Sauf mention contraire, toute contribution proposée pour inclusion dans ce projet est placée sous cette même double licence, sans condition supplémentaire.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages