- Tận dụng hiệu năng biên dịch của Rust để tối đa hóa tốc độ build và thực thi của ứng dụng React
- Hỗ trợ React Server Components mặc định, giúp giảm lượng JavaScript được gửi tới client
- Hiện thực build nhanh không cần cấu hình với trình bundle Rust thế hệ mới dựa trên Rolldown-Vite
- Hỗ trợ TypeScript đầy đủ bằng tsgo, cung cấp kiểm tra kiểu nhanh gấp 10 lần
- HMR dựa trên Vite, thông báo lỗi chi tiết và công cụ phát triển tốc độ native bảo đảm trải nghiệm phát triển mượt mà
Tối ưu hiệu năng dựa trên Rust
- Được biên dịch bằng Rust để mang lại tốc độ ở mức native
- Có thể xử lý tốc độ cao cả khi build lẫn lúc runtime
- Cấu trúc giúp giảm thiểu điểm nghẽn hiệu năng của ứng dụng React
Hỗ trợ React Server Components
- Tích hợp sẵn React Server Components
- Giảm lượng JavaScript được gửi tới client, từ đó cải thiện hiệu quả tải
- Hiện thực tối ưu truyền tải thông qua render lấy server làm trung tâm
Môi trường build không cần cấu hình
- Cấu trúc Zero Configuration dựa trên Rolldown-Vite
- Có thể build ngay lập tức mà không cần thiết lập riêng
- Trình bundle viết bằng Rust mang lại tốc độ build nhanh như chớp
Bundling và độ an toàn kiểu
- Đảm bảo hiệu năng tối đa với bundling tốc độ native bằng Rolldown
- Hỗ trợ TypeScript đầy đủ thông qua tsgo
- Cung cấp kiểm tra kiểu nhanh gấp 10 lần và định nghĩa kiểu chính xác
Trải nghiệm nhà phát triển
- HMR (Hot Module Replacement) dựa trên Vite giúp phản ánh thay đổi mã ngay tức thì
- Hỗ trợ quy trình làm việc mượt mà với thông báo lỗi chi tiết và công cụ phát triển tốc độ native
- Cung cấp môi trường tích hợp Rust-React giúp nâng cao hiệu quả và năng suất phát triển
1 bình luận
Ý kiến Hacker News
Thật ra tôi thích dự án này. Nhưng phần giải thích và chất lượng tài liệu còn quá thiếu
Nếu cách nói “rust-powered” chỉ có nghĩa là dùng rolldown để bundle JS thì cũng ổn, nhưng rất dễ khiến người ta hiểu nhầm là một framework Rust
Ngoài ra, những câu như “seamless NPM package integration” nghe như do LLM viết. Phần lớn thư viện JS vốn đã hoạt động như vậy nên câu này không có nhiều ý nghĩa
Dù vậy, xét ở chỗ gần như không có framework đơn giản nào cho React, sự đơn giản cho phép đi thẳng từ project trống sang RSC là cực kỳ tuyệt vời. Đó mới nên là slogan
Codebase trông trưởng thành hơn tài liệu rất nhiều. Plugin Vite cũng có hỗ trợ tùy chọn khá tốt, chỉ là chưa được ghi tài liệu thôi
Sau đó tôi mới biết runtime Rust thực sự chạy JS. Nhưng tôi vẫn thắc mắc liệu cái này có tách rời khỏi framework không, hay chỉ hoạt động với runtime Rust. Tôi muốn biết có chạy được trên Node không
“Rust-powered” không nói về bundler mà là server runtime. HTTP server, bộ render RSC và routing đều được viết bằng Rust, còn React component thì chạy bằng V8 engine tích hợp sẵn
Phần tích hợp npm có nghĩa là runtime Rust tự xử lý việc phân giải
node_modules. Nó không dùng npm specifier như DenoSlogan “Zero to RSC in minutes” rõ ràng hơn nhiều. Vì tôi tập trung ổn định runtime nên tài liệu bị tụt lại phía sau, giờ đúng là lúc phải bổ sung
Tôi nghĩ React giờ là tệ nhất trong các framework JS hiện đại. Vue đi trước rất xa, còn Svelte hay Solid, thậm chí cả Marko, cũng tốt hơn
Nhưng nó vẫn chưa phải tệ nhất. Nó đã phổ biến được nhờ những đổi mới như JSX, function component và quản lý state đơn giản
Giờ cộng đồng của nó quá lớn nên sẽ không dễ bị thay thế. Các framework khác có cải thiện dần, nhưng mức độ đột phá cũng không quá lớn
Tôi dùng cấu trúc MVC/MVVM trong các dự án cá nhân và thấy dễ quản lý hơn hẳn. Cũng ít phụ thuộc plugin IDE hơn và có thể tự do chọn phiên bản TypeScript
Tôi đang thử nghiệm tổ hợp Rust + React. react-vello mà tôi làm sẽ đưa Vello, một GPU renderer viết bằng Rust, ra dưới dạng React renderer
Thông qua WASM + WebGPU, Rust đảm nhiệm việc render trong trình duyệt, còn React cho phép vẽ hình và văn bản theo kiểu khai báo
Việc nối hai bên bằng wasm-bindgen và tsify dễ đến mức như đang dùng cùng một ngôn ngữ. Tôi thấy đây đúng là tinh hoa kỹ thuật
React Vello cũng trông rất hay, cảm ơn đã chia sẻ
Câu mô tả “React Server Components framework powered by a Rust runtime” mới là trọng tâm
Nếu đang tìm framework web dựa trên Rust thì tôi đề xuất Leptos
Link liên quan: thảo luận HN, demo YouTube
Nhưng rari đi theo hướng khác. Nó không phải framework Rust, mà là framework React Server Components chạy trên runtime Rust
Mục tiêu là che giấu sự phức tạp của Rust để lập trình viên JS/TS không cần biết Rust vẫn có thể xây app React hiệu năng cao
Câu “Rust-Powered Performance — Native speed with Rust compilation for blazing-fast builds and runtime” nghe khá buồn cười
Trong khi bản thân Rust thì compile chậm, cảm giác như nó đang giúp ngôn ngữ khác khoe tốc độ
Tôi tò mò không biết nó có hoạt động kiểu ReasonML và React-Reason không. Tôi không hiểu Rust có phải đang tái hiện lại JS engine không
Rust đóng vai trò server runtime. Thay vì Node.js, server Rust sẽ chạy React Server Components bằng V8 engine tích hợp sẵn
Tức là mã React vẫn giữ nguyên, chỉ có server là nền tảng Rust nên cho hiệu năng tốt hơn Node
Tôi là tác giả. Hiện tại vấn đề đã được giải quyết. Nguyên nhân là do rate limiter hoạt động quá gắt
Tôi cũng đang làm thứ tương tự cho backend JVM — double-view
Nó chạy JS bằng GraalVM, nhưng do vấn đề tích hợp nên phải compile JS sang WebAssembly. Tôi tò mò không biết rari có dùng cách tương tự không
Cái tên nghe vừa nhanh như “Ferrari” vừa gợi đến React nên rất hay. Tôi tò mò không biết có trường hợp sử dụng hay cảm hứng cụ thể nào đằng sau không
Tôi cũng vừa công bố một dự án mã nguồn mở gần đây, nên thấy dự án của bạn được chú ý như vậy cũng vui lây
Nhưng tôi cũng thích liên tưởng tới Ferrari, rất hợp với chủ đề hiệu năng
Vì tôi dùng Rust rất nhiều nên cũng muốn mang lợi thế hiệu năng đó tới cho lập trình viên JS trong quá trình phát triển React
Mục tiêu là giấu đi độ phức tạp của Rust nhưng vẫn giữ nguyên tốc độ
Chúc mừng bạn ra mắt dự án! Tôi cũng tò mò bạn đã làm gì
Tài liệu bắt đầu bằng Server Components, nên tôi tự hỏi sau vụ sự cố bảo mật gần đây thì nó vẫn còn là xu hướng hay không
Tham khảo: báo cáo lỗ hổng RCE của React Server Components