2 điểm bởi GN⁺ 2024-06-22 | 1 bình luận | Chia sẻ qua WhatsApp
  • Ladybird là một dự án mã nguồn mở hướng tới xây dựng một trình duyệt web độc lập, không dựa trên Chrome.
  • Được viết bằng C++ và sử dụng giấy phép 2-Clause BSD.
  • Ban đầu là một phần của dự án SerenityOS, nhưng sau đó được nhà phát triển Andreas Kling tách ra thành dự án độc lập.

Bối cảnh dự án

  • Andreas Kling bắt đầu SerenityOS vào năm 2018, sau đó rời SerenityOS để tập trung vào trình duyệt Ladybird.
  • SerenityOS là dự án mà Kling khởi động sau khi hoàn thành chương trình cai nghiện; ông từng có kinh nghiệm làm việc trên các trình duyệt dựa trên WebKit tại Apple và Nokia.

Tiến độ dự án

  • Ladybird hiện vẫn đang ở giai đoạn phát triển ban đầu (pre-alpha).
  • Hiện có thể chạy trên Linux, macOS và các hệ điều hành họ UNIX khác.
  • Trên Windows, có thể chạy thông qua WSL2, nhưng hiện vẫn chưa có hỗ trợ Windows độc lập.
  • Dự án hiện chưa cung cấp bản nhị phân trên bất kỳ nền tảng nào; người dùng phải tự build từ mã nguồn.

Tính năng và hiệu năng

  • Tính năng cơ bản: có thanh URL/tìm kiếm, làm mới, tab, phóng to/thu nhỏ nội dung, chụp màn hình và điều hướng tiến/lùi.
  • Tính năng còn thiếu: chưa có dấu trang, lịch sử, tiện ích mở rộng, quản lý mật khẩu, in ấn và lưu hình ảnh.
  • Hỗ trợ CSS: trong bài kiểm tra CSS Selectors, đạt 100% ở cấp độ 1-3 và 53% ở cấp độ 4.
  • Hỗ trợ JavaScript: hoạt động được nhưng chậm.
  • Công cụ cho nhà phát triển: có trình kiểm tra cây DOM và cây trợ năng, các chức năng tạo dump khác nhau và khả năng giả mạo User-Agent.

Kế hoạch sắp tới

  • Sử dụng thư viện có sẵn: dự định dùng các thư viện hiện có thay vì các thư viện tự phát triển trong SerenityOS.
  • Sự tham gia của nhà phát triển: dự án thảo luận phát triển trên máy chủ Discord, và maintainer được lựa chọn theo hình thức mời.

Ý kiến của GN⁺

  1. Thách thức kỹ thuật: Ladybird hướng tới một trình duyệt web độc lập, nhưng tính năng và hiệu năng hiện tại vẫn khó so sánh với các trình duyệt chủ lưu. Đặc biệt, vẫn cần nhiều cải thiện về bảo mật và hiệu năng.
  2. Cộng đồng phát triển: để dự án thành công, cần một cộng đồng nhà phát triển năng động và những đóng góp liên tục. Kênh YouTube và máy chủ Discord của Kling có thể là điểm khởi đầu tốt cho điều này.
  3. Cạnh tranh với các trình duyệt hiện có: có lẽ sẽ cần nhiều thời gian để cạnh tranh với các trình duyệt hiện có như Firefox hay Chrome. Đặc biệt, việc tuân thủ tiêu chuẩn web và hỗ trợ đa dạng tính năng là rất quan trọng.
  4. Lựa chọn công nghệ: được viết bằng C++, Ladybird có thể có lợi thế về hiệu năng, nhưng cũng đáng để cân nhắc sử dụng các ngôn ngữ hiện đại như Rust. Rust mang lại nhiều ưu điểm về an toàn bộ nhớ và hiệu năng.
  5. Trải nghiệm người dùng: hiện tại Ladybird chưa phù hợp với người dùng phổ thông. Việc cải thiện trải nghiệm người dùng và bổ sung thêm nhiều tính năng là rất quan trọng.

1 bình luận

 
GN⁺ 2024-06-22
Ý kiến trên Hacker News
  • Nhà phát triển Firefox: Chia sẻ bài viết blog về quá trình tạo ra một trình duyệt web.
  • Andreas Kling: Có thể hiểu được quyết định rời Serenity OS. Trình duyệt Ladybird đã có thể dùng hằng ngày.
  • Vấn đề đăng nhập Discord: Ladybird render trang khá tốt nhưng còn thiếu tốc độ và độ ổn định.
  • Kỳ vọng vào dự án mới: Kỳ vọng rằng mã được viết lại từ đầu sẽ lập tức giải quyết mọi thứ là không thực tế.
  • Ý kiến về ngôn ngữ Rust: Những bình luận kiểu "hãy viết lại bằng Rust" gây cảm giác nản lòng.
  • Khuyến khích tham gia dự án: Dự án rất thú vị và cần có thêm nhiều dự án trình duyệt hơn nữa.
  • So sánh Firefox và Ladybird: Dù không hài lòng với các quyết định của Firefox, vẫn dự đoán Ladybird sẽ gặp những vấn đề tương tự.
  • Câu hỏi của người mới bắt đầu: Hỏi liệu người mới có thể đóng góp cho dự án hay không.
  • Kỳ vọng về trình duyệt cộng đồng: Mong đợi vào một trình duyệt do cộng đồng tạo ra.
  • Chúc Ladybird và Servo thành công: Có phần thiên vị Servo vì sử dụng Rust.
  • Câu hỏi về tình trạng của Servo: Hỏi liệu Servo có phải là lõi của trình duyệt không, và cần bao nhiêu công việc để tạo ra một trình duyệt.
  • Đề xuất trình duyệt lai: Đề xuất một trình duyệt kết hợp Ladybird và Firefox.
  • Ấn tượng về script build: Hy vọng script build hoạt động hoàn hảo sẽ giúp nó phát triển thành một trình duyệt có sức cạnh tranh.