Lobsters - mã nguồn Rails cho một trang cộng đồng tương tự Hacker News
(github.com/lobsters)Giới thiệu dự án Lobsters Rails
- Dự án Lobsters Rails là mã nguồn có thể truy cập tại https://lobste.rs, được viết trên nền tảng Rails và sử dụng cơ sở dữ liệu backend SQL với MariaDB.
- Mã nguồn này được phát hành theo giấy phép BSD 3-clause, vì vậy bất kỳ ai cũng có thể sử dụng để khởi chạy một trang chị em.
- Báo lỗi và đóng góp mã nguồn đều được hoan nghênh, nhưng cần hiểu rằng những công việc không hữu ích cho trang có thể khó được chấp nhận.
Cách đóng góp
- Những ai muốn hỗ trợ dự án có thể tham khảo tệp CONTRIBUTING.
- Trong hầu hết trường hợp, những người đã quen với mã nguồn có thể trả lời câu hỏi trong phòng chat.
Cách thiết lập ban đầu
- Có thể làm theo các bước để cài đặt cục bộ, hoặc dùng lobsters-ansible để thiết lập triển khai production.
- Nếu muốn dùng Docker thì có dự án bên ngoài là docker-lobsters.
- Cài đặt phiên bản Ruby được ghi trong
.ruby-version, rồi checkout kho git lobsters từ GitHub. - Cài đặt Nodejs vì nó cần cho uglifier, rồi chạy Bundler để cài các gem cần thiết cho dự án.
- Tạo cơ sở dữ liệu MySQL và nhập thông tin cơ sở dữ liệu cho môi trường phát triển và kiểm thử vào tệp
config/database.yml. - Có thể nạp schema vào cơ sở dữ liệu mới, thêm dữ liệu mẫu trên máy của nhà phát triển và chạy máy chủ Rails ở chế độ phát triển.
- Để triển khai site trong production, cần cấu hình web server và chạy ứng dụng ở chế độ production.
- Cần thiết lập crontab hoặc một trình lập lịch khác cho các tác vụ định kỳ.
Cách quản trị
- Việc kiểm duyệt cơ bản được thực hiện trên site, nhưng phần lớn tác vụ quản trị cần dùng rails console trong production.
- Quản trị viên có thể tạo và chỉnh sửa thẻ tại
/tags.
Ý kiến của GN⁺
Điểm quan trọng nhất của bài viết này là mã nguồn của Lobsters, một dự án Rails mã nguồn mở, có thể được bất kỳ ai sử dụng và luôn chào đón sự đóng góp từ cộng đồng. Bài viết này có thể hấp dẫn với những người quan tâm đến phát triển phần mềm vì nó mang lại cơ hội khám phá, học hỏi từ codebase của một ứng dụng web đang vận hành thực tế, và thậm chí dùng nó để khởi chạy trang web của riêng mình.
1 bình luận
Ý kiến trên Hacker News