Cộng đồng Rust được làm bằng Django và AI à?
(rust-lang.kr)Gần đây khi bắt đầu học Rust, tôi nghĩ sẽ thật tốt nếu có một cộng đồng ổn áp, nên cuối cùng đã tự mình tạo ra. Ban đầu tôi định kiểu như “Hay thử làm bằng Rust nhỉ?”, nhưng rồi vì đây vẫn là một cộng đồng công khai nên tôi nghĩ rằng “điều quan trọng hơn là phải để nhiều người có thể sử dụng ổn định”, và vì thế tôi đã phát triển nó bằng Django, thứ mà tôi có nhiều kinh nghiệm hơn.
(Phần giải thích bổ sung như frontend, v.v. tôi sẽ nói chi tiết hơn ở bên dưới 👏)
Trang web
- Cộng đồng Rust tại Hàn Quốc: https://rust-lang.kr
- Mã nguồn backend (Django): https://github.com/lee-lou2/rust-korea
Backend
Như đã nói ở trên, backend được phát triển bằng Django.
[ Công nghệ đã áp dụng ]
- Cơ sở dữ liệu hiện đang dùng Sqlite3, nhưng vì sử dụng Django ORM nên có thể thay thế một cách đơn giản.
- Phần mã frontend đã build được render bằng Django Template View.
- Vì thế nên một cách tự nhiên tôi đã sử dụng session.
- Để dùng infinite scroll và các tính năng nâng cao, Rest API cũng đã được phát triển thêm bằng DRF.
- Trong DRF, tôi đã áp dụng Filterset và Throttling để tăng độ ổn định.
[ Các tính năng đã triển khai ]
- Có chức năng viết/sửa bài feed và xem dưới dạng infinite scroll.
- Tôi cũng đã triển khai tính năng thích feed và báo cáo.
- Ngoài ra còn có tạo/sửa/xem bình luận, trả lời bình luận, thích bình luận và báo cáo bình luận.
- Đã phân loại category, đồng thời phát triển để có thể chèn link kèm preview.
- Cũng bao gồm các menu cá nhân như đăng nhập Google, chỉnh sửa hồ sơ, quản lý bài viết của tôi, v.v.
Frontend
Vì tôi chủ yếu chỉ làm backend, nên dù có thể làm frontend nhưng không giỏi lắm, thế là tôi phải mượn sức mạnh của AI.
Dịch vụ tôi đã dùng là bolt.new.
(Cũng có cách dùng open bolt tại local với API KEY của riêng mình)
Đây là một website có thể tạo frontend đơn giản bằng ngôn ngữ tự nhiên.
- Tôi chỉ viết yêu cầu một cách đơn giản thôi mà ngay từ đầu đã ra một website quá ưng ý.
- Nghĩ “Ôi, cái này đỉnh thật đấy”, tôi bắt đầu thêm dần các tính năng.
- Vì có thể kiểm soát chi tiết nên phần lớn tính năng đã được triển khai gần như hoàn hảo.
- “Giá mà mọi thứ kết thúc ở đó thì tốt biết mấy...”, nhưng vấn đề bắt đầu từ đây.
- Khi tôi định tích hợp API do mình làm thì từ lúc đó mọi thứ bắt đầu rối tung lên.
- Thiết kế vốn đang rất ổn bị hỏng, lỗi thì cứ liên tục xuất hiện.
- Số credit có thể dùng để tạo cũng dần chạm giới hạn...
- Không thể nào tiếp tục tiến độ được, nên tôi chỉ đành quay lại trước lúc tích hợp API rồi tải code về local.
- Từ đây, tôi bắt đầu làm việc cùng người bạn AI thứ hai.
- Đó chính là Cursor.
- Khi làm việc bằng cách tích hợp API trực tiếp ở local, mọi thứ tốt hơn tôi tưởng rất nhiều.
- Ngoài ra, Cursor còn cho phép kiểm soát chính xác hơn, có thể hoàn tác, hiểu ngữ cảnh từng phần, tham chiếu tài liệu riêng, v.v., nên nó đã giúp tôi làm ra thứ còn vượt hơn cả mục tiêu ban đầu.
Và như thế, tôi đã hoàn thành việc phát triển frontend mà mình đặt mục tiêu.
Kết lời
Hơi đột ngột nhưng Rust thật sự rất vui haha, sau này khi nâng cấp backend có lẽ tôi sẽ thử đổi sang Rust.
Mong mọi người cũng ghé thăm nhiều cộng đồng Rust mà tôi đã tạo 🙏 Dù hiện tại chưa có nhiều bài viết, nhưng tôi đang định dịch cả Hacker News để đăng lên, và nếu có các sự kiện đa dạng thì tôi cũng sẽ chăm chỉ đăng tải.
Lần sau tôi sẽ quay lại với nội dung hay hơn.
Gần đây tôi bắt đầu viết bài từng chút một trên GeekNews, nghĩ lại thì thấy khá vui haha
Nếu có thời gian, mọi người cũng hãy ghé xem bài trước của tôi nhé
(https://vi.news.hada.io/topic?id=18602)
Xin cảm ơn 😊
4 bình luận
Xin cũng giới thiệu trang web https://rust-kr.org/ được viết hoàn toàn bằng Rust.
Wow, cảm ơn bạn 👍
Tôi cũng đang thử một ngôn ngữ mới bằng cursor và gặp những lần thử-sai tương tự đây haha, cộng đồng bạn chia sẻ thật tuyệt.
Cảm ơn bạn 🙇♂️
Dù cũng có đôi chút trắc trở, nhưng nhờ AI mà mình làm việc cực kỳ nhanh và thoải mái luônhaha
Mong rằng bạn dlehals2 cũng sẽ vượt qua thật tốt và tạo ra một dự án còn tuyệt vời hơn nữa 🎉