2 points par GN⁺ 2024-06-22 | 1 commentaires | Partager sur WhatsApp
  • Ladybird est un projet open source qui vise à créer un navigateur web indépendant, non basé sur Chrome.
  • Il est écrit en C++ et distribué sous licence BSD 2-Clause.
  • Il a commencé comme une partie du projet SerenityOS, mais le développeur Andreas Kling l’a séparé en projet indépendant.

Contexte du projet

  • Andreas Kling a lancé SerenityOS en 2018, puis s’est retiré de SerenityOS pour se concentrer sur le navigateur Ladybird.
  • SerenityOS est un projet que Kling a démarré après avoir terminé un programme de réinsertion ; il avait auparavant travaillé sur des navigateurs basés sur WebKit chez Apple et Nokia.

État d’avancement du projet

  • Ladybird en est encore à un stade précoce de développement (pré-alpha).
  • Il peut actuellement fonctionner sur Linux, macOS et d’autres systèmes d’exploitation de la famille UNIX.
  • Sur Windows, il peut fonctionner via WSL2, mais il n’existe pas encore de prise en charge native de Windows.
  • Le projet ne fournit actuellement aucun binaire sur aucune plateforme ; il faut compiler les sources soi-même.

Fonctionnalités et performances

  • Fonctions de base : barre d’URL/recherche, rechargement, onglets, zoom du contenu, captures d’écran, navigation avant/arrière.
  • Fonctions manquantes : pas de favoris, d’historique, d’extensions, de gestion des mots de passe, d’impression ni d’enregistrement d’images.
  • Prise en charge CSS : 100 % aux tests CSS Selectors niveaux 1 à 3, et 53 % au niveau 4.
  • Prise en charge JavaScript : cela fonctionne, mais reste lent.
  • Outils de développement : inspecteur de l’arbre DOM et de l’arbre d’accessibilité, diverses fonctions de génération de dumps, et spoofing du User-Agent.

Plans pour la suite

  • Utilisation de bibliothèques existantes : le projet prévoit d’utiliser des bibliothèques existantes au lieu des bibliothèques développées en interne pour SerenityOS.
  • Participation des développeurs : les discussions de développement ont lieu sur un serveur Discord, et les mainteneurs sont choisis sur invitation.

L’avis de GN⁺

  1. Défi technique : Ladybird vise à devenir un navigateur web indépendant, mais ses fonctionnalités et ses performances actuelles restent encore difficiles à comparer à celles des navigateurs grand public. En particulier, de nombreuses améliorations sont encore nécessaires en matière de sécurité et de performances.
  2. Communauté de développement : pour réussir, le projet aura besoin d’une communauté de développeurs active et de contributions continues. La chaîne YouTube de Kling et le serveur Discord peuvent constituer un bon point de départ en ce sens.
  3. Concurrence avec les navigateurs existants : il faudra sans doute beaucoup de temps pour rivaliser avec des navigateurs établis comme Firefox ou Chrome. Le respect des standards du web et la prise en charge d’un large éventail de fonctionnalités seront particulièrement importants.
  4. Choix technologique : écrit en C++, Ladybird peut avoir des avantages en matière de performances, mais il pourrait aussi être pertinent d’envisager l’usage de langages plus modernes comme Rust. Rust offre de nombreux avantages en matière de sûreté mémoire et de performances.
  5. Expérience utilisateur : à l’heure actuelle, Ladybird ne convient pas au grand public. Il est important d’améliorer l’expérience utilisateur et d’ajouter davantage de fonctionnalités.

1 commentaires

 
GN⁺ 2024-06-22
Réactions sur Hacker News
  • Développeur Firefox : partage d’un billet de blog sur le processus de création d’un navigateur web.
  • Andreas Kling : la décision de quitter Serenity OS se comprend. Le navigateur Ladybird est utilisable au quotidien.
  • Problème de connexion à Discord : Ladybird affiche bien les pages, mais manque encore de vitesse et de stabilité.
  • Attentes autour d’un nouveau projet : espérer qu’un code écrit depuis zéro résoudra immédiatement tous les problèmes n’est pas réaliste.
  • Avis sur le langage Rust : les commentaires du type « réécrivez-le en Rust » sont frustrants.
  • Encouragement à participer au projet : le projet est intéressant et il faut davantage de projets de navigateurs.
  • Comparaison entre Firefox et Ladybird : malgré le mécontentement face aux décisions de Firefox, on s’attend à ce que Ladybird rencontre aussi des problèmes similaires.
  • Question de débutant : demande si un débutant peut contribuer au projet.
  • Attente d’un navigateur communautaire : enthousiasme pour un navigateur créé par la communauté.
  • Vœux de réussite pour Ladybird et Servo : légère préférence pour Servo, qui utilise Rust.
  • Question sur l’état de Servo : demande si Servo constitue le cœur du navigateur et quelle quantité de travail reste nécessaire pour en faire un navigateur complet.
  • Proposition de navigateur hybride : suggestion d’un navigateur combinant Ladybird et Firefox.
  • Impression sur les scripts de build : espoir de voir le projet devenir un navigateur compétitif grâce à des scripts de build qui fonctionnent parfaitement.