pyssgA tiny-kernel, plugin-driven static site generator

Một trình tạo trang tĩnh xây quanh một kernel siêu nhỏ và kiến trúc plugin + lifecycle-hook kiểu webpack. Kernel không biết gì về Markdown, HTML hay template: mọi tính năng đều là một plugin tap vào các lifecycle hook.

Chính trang này được tạo bởi pyssg, dùng preset i18n_docs() có sẵn để phục vụ cả tiếng Anh lẫn tiếng Việt từ một cây nguồn duy nhất.

Kernel nhỏ, không phụ thuộc

Lõi thuần thư viện chuẩn. Nó chỉ điều phối một vòng đời và để các plugin làm việc.

Mọi thứ đều là plugin

Đọc file, phân tích frontmatter, render Markdown, dựng template, ghi ra đĩa - tất cả là plugin bạn có thể thay hoặc mở rộng.

Một mô hình nội dung chung

Permalink, collection, listing và navigation cùng nói một ngôn ngữ, nên template chỉ cần học site, page, collections và menus.

Preset thân thiện

docs(), blog() và site() cho bạn một bộ chạy được trong một dòng; người dùng nâng cao tự ráp plugin bằng tay.

Nếm thử

# pyssg.config.py
from pyssg.config import Config
from pyssg_cli.presets import docs


def config() -> Config:
    return Config(src="content", out="public", plugins=docs())
pyssg build

Đó là toàn bộ thiết lập đằng sau trang bạn đang đọc.

Đi tiếp đâu