Bỏ qua tới nội dung
Mã nguồn· ·9 phút đọc

Jekyll là gì (trình tạo web tĩnh viết bằng Ruby)

Trần Trọng Luân
Jekyll là gì (trình tạo web tĩnh viết bằng Ruby)
Cỡ chữ

Nếu bạn từng mở một trang dự án trên GitHub và thấy nó có cả website tài liệu đẹp đẽ kèm theo, rất có thể đó là Jekyll. Đây là công cụ dựng web tĩnh ra đời năm 2008 bởi Tom Preston-Werner — đồng sáng lập GitHub — nên không lạ khi nó được tích hợp thẳng vào nền tảng này. Bản mới nhất tính đến đầu năm 2026 là Jekyll 4.4.0.

Jekyll hoạt động ra sao

Khác với WordPress hay các CMS (hệ quản trị nội dung — phần mềm quản lý bài viết qua giao diện quản trị) cần một máy chủ chạy mã và truy vấn cơ sở dữ liệu mỗi lần có khách ghé, Jekyll làm việc một lần duy nhất lúc build (dựng). Bạn viết bài bằng Markdown, đặt khuôn giao diện bằng ngôn ngữ mẫu Liquid, rồi chạy lệnh build. Jekyll đọc tất cả file, ghép layout, rồi xuất ra một thư mục gồm các file HTML, CSS, JavaScript tĩnh. Thư mục đó chính là website hoàn chỉnh — chỉ việc tải lên bất kỳ host nào phục vụ file tĩnh.

Ba mảnh ghép cốt lõi của Jekyll:

  • Markdown: cú pháp viết văn bản gọn nhẹ, dùng dấu # cho tiêu đề, dấu * cho danh sách. Bạn tập trung vào nội dung, không vướng thẻ HTML.
  • Liquid: ngôn ngữ mẫu (template) do Shopify tạo ra, cho phép chèn vòng lặp, biến, điều kiện vào layout — ví dụ duyệt qua danh sách bài viết để in ra trang chủ.
  • Front matter: khối cấu hình đặt ở đầu mỗi file (viết bằng YAML), khai báo tiêu đề, ngày đăng, layout áp dụng cho bài đó.
Sơ đồ các bước Jekyll build site và xuất bản lên GitHub Pages
Quy trình Jekyll: viết Markdown, build thành tĩnh, đẩy lên GitHub Pages.

Mối duyên với GitHub Pages

Đây là điểm khiến Jekyll khác biệt nhất so với phần còn lại. GitHub Pages — dịch vụ host web tĩnh miễn phí của GitHub — hỗ trợ Jekyll nguyên bản: bạn chỉ cần đẩy mã nguồn Jekyll lên một kho (repository), GitHub sẽ tự build và xuất bản, không cần cấu hình thêm dòng nào. Với một blog cá nhân, trang giới thiệu dự án mã nguồn mở, hay trang tài liệu kỹ thuật, điều này nghĩa là bạn có một website thật sự online mà chi phí host bằng không.

Đổi lại, GitHub Pages chỉ chạy một danh sách plugin (tiện ích mở rộng) được duyệt sẵn, nên bạn không thể dùng plugin tự viết tuỳ ý nếu để GitHub build hộ. Muốn thoát giới hạn này, bạn build cục bộ hoặc qua GitHub Actions rồi đẩy kết quả HTML lên — lúc đó dùng plugin nào cũng được.

Ưu điểm của Jekyll

  • Miễn phí và an toàn: web tĩnh không có cơ sở dữ liệu, không có lớp PHP để khai thác, nên gần như miễn nhiễm với phần lớn lỗ hổng bảo mật thường gặp ở web động.
  • Nhanh cho người đọc: máy chủ chỉ trả về file có sẵn, không phải tính toán gì. Đây cũng là lý do nhiều người chọn hướng web tĩnh tải nhanh khi muốn tốc độ và điểm Core Web Vitals tốt.
  • Tích hợp GitHub Pages liền mạch nhất trong nhóm: gần như không công cụ nào khác đẩy lên là chạy được ngay như Jekyll.
  • Sinh thái lâu đời: nhiều theme miễn phí (Minima, Minimal Mistakes…) và hướng dẫn tiếng Anh dày đặc do tuổi đời gần hai thập kỷ.

Nhược điểm cần cân nhắc

  • Cần môi trường Ruby: cài Jekyll trên máy đòi hỏi Ruby, RubyGems, Bundler. Trên Windows, việc dựng môi trường Ruby thường rắc rối hơn các công cụ chỉ cần một file thực thi.
  • Build chậm khi site lớn: Jekyll xử lý đơn luồng, nên với site cả nghìn trang thời gian build kéo dài đáng kể.
  • Liquid hạn chế hơn: với logic phức tạp, ngôn ngữ mẫu Liquid không linh hoạt bằng các công cụ dùng JavaScript hay React.
  • Không có giao diện quản trị: bạn viết bài bằng file và dùng Git, không có bảng điều khiển kéo-thả như WordPress. Người không quen dòng lệnh sẽ thấy khó.

Jekyll so với Hugo

Đây là phép so sánh được hỏi nhiều nhất, vì cả hai cùng là trình tạo web tĩnh hướng blog. Khác biệt lớn nhất nằm ở tốc độ build và cách triển khai.

Tiêu chíJekyllHugo
Ngôn ngữRubyGo
Tốc độ buildChậm hơn (đơn luồng)Rất nhanh (xử lý song song)
Cài đặtCần Ruby + BundlerMột file thực thi duy nhất
GitHub PagesHỗ trợ nguyên bản, không cấu hìnhCần GitHub Actions hoặc tự build
Hợp vớiBlog nhỏ, trang dự án trên GitHubSite lớn, nhiều trang, cần build nhanh

Theo các phép đo công khai năm 2026, Hugo dựng trang nhanh hơn Jekyll rõ rệt nhờ ngôn ngữ Go biên dịch và chạy đa luồng. Nếu bạn quản site vài nghìn bài, sự chênh lệch này rất đáng kể. Bạn có thể đọc thêm về trình tạo web tĩnh Hugo viết bằng Go để cân nhắc. Ngược lại, nếu mục tiêu là một blog gọn chạy miễn phí trên GitHub Pages mà không muốn động đến cấu hình triển khai, Jekyll vẫn là lựa chọn ít rào cản nhất.

Một lựa chọn thứ ba đáng nhắc cho người dùng Node.js là Hexo — trình tạo web tĩnh viết bằng JavaScript, hợp khi bạn đã quen hệ sinh thái npm.

Bảng so sánh Jekyll nền Ruby với Hugo nền Go
Jekyll chạy nền Ruby và gắn liền GitHub Pages, Hugo nền Go build nhanh hơn.

Ai nên dùng Jekyll

Jekyll hợp nhất với:

  • Lập trình viên muốn một blog cá nhân hoặc trang portfolio chạy miễn phí trên GitHub Pages, đã quen Git và dòng lệnh.
  • Dự án mã nguồn mở cần trang tài liệu hoặc trang giới thiệu đặt ngay cạnh kho mã.
  • Người viết kỹ thuật thích quy trình viết bằng Markdown, lưu vết bằng Git, không cần CMS nặng.

Jekyll ít hợp nếu bạn cần một website thương mại nhiều tính năng động (giỏ hàng, tài khoản, bình luận tự lưu), hoặc nếu người quản trị nội dung không rành kỹ thuật và muốn một giao diện soạn bài trực quan. Trong các trường hợp đó, một CMS truyền thống thường phù hợp hơn.

Và nếu bạn không muốn tự dựng, có thể tham khảo dịch vụ thiết kế website của Web22.

Câu hỏi thường gặp

Jekyll có miễn phí không?

Có. Jekyll là phần mềm mã nguồn mở, miễn phí hoàn toàn. Kết hợp với GitHub Pages, bạn còn được host miễn phí, chỉ tốn tiền nếu muốn gắn tên miền riêng.

Jekyll còn được phát triển không?

Còn. Dự án vẫn ra bản cập nhật, với phiên bản 4.4.0 phát hành tháng 1 năm 2026. Tốc độ ra bản chậm hơn trước, nhưng Jekyll vẫn được duy trì và dùng rộng rãi.

Học Jekyll có khó không?

Nếu bạn đã biết Git và thoải mái với dòng lệnh, Jekyll khá dễ tiếp cận. Rào cản lớn nhất với người mới thường là khâu cài môi trường Ruby, đặc biệt trên Windows.

Đọc tiếp

Bài viết
cùng chủ đề.

Tất cả bài viết