pdfkit is a JavaScript PDF generation library used to programmatically create binary PDF documents in Node.js and browser environments. It functions as a vector graphics engine for rendering paths, shapes, gradients, and tiling patterns, and as a tool for producing rich text and tagged documents that follow international accessibility standards for screen reader compatibility.
The library includes a security and encryption utility for applying document encryption and restricting user permissions regarding printing, copying, or editing. It also serves as a form and annotation tool, enabling the embedding of fillable fields, interactive hyperlinks, and document annotations.
The system covers a broad range of capabilities including typography with automatic line wrapping and custom font embedding, as well as media asset management for inserting images and external file attachments. It further supports the creation of structural elements such as tables and internal navigation links.