Papermake - Typst tabanlı, self-host edilebilir PDF belge oluşturma sunucusu
(github.com/rkstgr)Papermake, Typst şablonlarını kullanarak PDF üreten HTTP tabanlı bir belge oluşturma sunucusudur.
Amaç
- Typst şablonlarının merkezi olarak yönetimi
- REST API üzerinden PDF oluşturma
- Şablon sürüm yönetimi
- Oluşturma geçmişinin (Audit Trail) yönetimi
- Docker Registry benzeri bir şablon deposu sunma
Başlıca özellikler
- Kod olarak yönetilen şablonlar (Templates as Code)
- Şablonlar değiştirilemez (Immutable) sürümleri ve değiştirilebilir (Mutable) etiketleri destekler.
- Örneğin
invoice:v1.0.0bir kez oluşturulduktan sonra değişmezken,invoice:latesten güncel sürümü gösterecek şekilde güncellenebilir.
- Sunucu tarafı render etme (Server-side Rendering)
- İstemci ortamına Typst kurmaya gerek yoktur.
- Yalnızca HTTP API çağrısıyla sunucuda PDF render edilip döndürülür.
- İçerik adreslemeli depolama (Content-addressable Storage)
- Şablonlar SHA-256 hash değerine göre saklanır.
- Aynı şablon tekrar saklanmaz ve Git benzeri bir yöntemle depolama alanı verimli şekilde yönetilir.
- Tam denetim izi (Audit Trail)
- Tüm render işlemleri için giriş verileri ile çıktı sonuçlarının hash değerleri kaydedilir.
- Üretilen tüm PDF'lerin hangi şablon ve hangi veriyle oluşturulduğu tam olarak izlenebilir.
- Self-host edilebilir
- Rust ile yazılmış tek bir çalıştırılabilir dosya, S3 uyumlu nesne depolama ve ClickHouse ile kendi altyapınızda kurulup işletilebilir.
Henüz yorum yok.