awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
bpampuch avatar

bpampuch/pdfmake

0
View on GitHub↗
12,297 stars·2,079 forks·JavaScript·28 viewspdfmake.org↗

Pdfmake

pdfmake is a JavaScript PDF generation library and declarative document engine that transforms structured JavaScript objects into formatted PDF files. It functions as a layout engine capable of producing documents on both the client side within a web browser and on the server side using Node.js.

The library utilizes a declarative approach to translate object-based document definitions into final PDFs. It distinguishes itself through a virtual layout engine that calculates element positions and page breaks and an inheritance-based style system that uses dictionaries to maintain visual consistency.

The toolkit covers advanced table construction with cell spanning and repeating headers, as well as automated page configuration for headers, footers, and tables of contents. It also supports custom font embedding and provides mechanisms to trigger browser downloads or system print dialogs.

Features

  • PDF Document Generation - Generates formatted PDF files from structured object definitions for consistent output across environments.
  • Document Layout Engines - Calculates element positions and page breaks by simulating document flow before final rendering.
  • Table Construction - Implements programmatic creation of complex tables featuring cell spanning, repeating headers, and adjustable column widths.
  • PDF Generation Libraries - Provides a high-level framework for creating and formatting professional PDF documents using JavaScript.
  • PDF Layout Engines - Transforms JSON-like declarative definitions into high-fidelity formatted PDF files.
  • Declarative Document Definitions - Translates structured JavaScript object trees into sequences of drawing commands for PDF generation.
  • Client-Side PDF Engines - Generates PDF documents directly in the web browser to eliminate the need for server round-trips.
  • Server-Side PDF Rendering - Generates PDF files on Node.js servers by converting JavaScript object definitions into downloadable documents.
  • Table of Contents - Generates structured tables of contents with page references for document navigation.
  • Dynamic Report Generation - Builds automated reports featuring complex tables, page numbering, and tables of contents based on dynamic data.
  • Header and Footer Management - Provides tools for managing static and dynamic content in document page headers and footers.
  • Page Layout Configurations - Allows configuration of page dimensions, orientations, and document metadata such as author and subject.
  • Browser-Based File Exports - Enables triggering browser downloads, opening PDFs in new tabs, or launching the system print dialog.
  • Canvas Rendering - Implements precise positioning of text and graphics using an absolute X-Y coordinate system.
  • Style Inheritance Systems - Uses a hierarchy of formatting rules and nested style dictionaries to resolve visual properties.
  • PDF Font Embedding - Allows including specific font files within documents to ensure consistent text rendering across viewers.
  • PDF Font Embedding - Supports the inclusion of custom font files within the document to ensure visual consistency.
  • Text Alignment & Case Formatting - Provides comprehensive controls for text alignment, line-wrapping, margins, and list creation.
  • Document Layout Design - Allows defining precise formatting, custom fonts, and page orientations for professional branded documents.

Star history

Star history chart for bpampuch/pdfmakeStar history chart for bpampuch/pdfmake

How this analysis was created: This summary and feature list are AI-generated from collected project material and can contain mistakes. Stars, license and language are imported from GitHub. Inclusion does not mean that we have tested or audited this project. Check the source documentation for any feature you depend on. Learn more on our About page.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Frequently asked questions

What does bpampuch/pdfmake do?

pdfmake is a JavaScript PDF generation library and declarative document engine that transforms structured JavaScript objects into formatted PDF files. It functions as a layout engine capable of producing documents on both the client side within a web browser and on the server side using Node.js.

What are the main features of bpampuch/pdfmake?

The main features of bpampuch/pdfmake are: PDF Document Generation, Document Layout Engines, Table Construction, PDF Generation Libraries, PDF Layout Engines, Declarative Document Definitions, Client-Side PDF Engines, Server-Side PDF Rendering.

Which projects share features with bpampuch/pdfmake?

Projects with overlapping indexed features include: questpdf/questpdf — QuestPDF is a C# PDF generation library and layout engine used to create structured documents, reports, and invoices.… prawnpdf/prawn — Prawn is a Ruby library and document layout tool used for the programmatic generation of PDF files. It functions as a… mpdf/mpdf — mPDF is a PHP library that transforms UTF-8 encoded HTML and CSS into formatted PDF documents. It serves as a PDF… jung-kurt/gofpdf — This is a Go-based PDF library used for the programmatic generation of PDF documents without relying on external C… tecnickcom/tcpdf — TCPDF is a PHP library for the programmatic generation of PDF documents, allowing developers to create files… python-openxml/python-docx — python-docx is an OOXML document manipulation library used for creating, reading, and updating Microsoft Word files.…

Projects sharing features with Pdfmake

These projects share indexed features with Pdfmake. Shared tags can include platform or build tooling; verify the primary use case before treating a result as a replacement.
  • questpdf/questpdfQuestPDF avatar

    QuestPDF/QuestPDF

    14,088View on GitHub↗

    QuestPDF is a C# PDF generation library and layout engine used to create structured documents, reports, and invoices. It utilizes a fluent API and a component-based layout approach to convert code into high-fidelity PDF and XPS files. The library distinguishes itself with a dedicated layout debugger that provides real-time previews, hot-reload capabilities, and visual boundary tools to map rendered elements back to source code. It also functions as an accessibility tool, providing semantic tagging and navigational aids to ensure documents comply with international accessibility and archival s

    C#c-sharpdotnet-coreexport
    View on GitHub↗14,088
  • mpdf/mpdfmpdf avatar

    mpdf/mpdf

    4,693View on GitHub↗

    mPDF is a PHP library that transforms UTF-8 encoded HTML and CSS into formatted PDF documents. It serves as a PDF generation engine and document architect capable of converting web pages and HTML forms into professional files. The project is distinguished by its multilingual rendering capabilities, providing comprehensive support for bidirectional text, right-to-left scripts, and CJK languages using Unicode font embedding and OpenType layout processing. It further enables professional print-ready design through advanced color modeling in CMYK, precise page dimensioning, and compliance with PD

    PHPcjkcsshtml
    View on GitHub↗4,693
  • prawnpdf/prawnprawnpdf avatar

    prawnpdf/prawn

    4,814View on GitHub↗

    Prawn is a Ruby library and document layout tool used for the programmatic generation of PDF files. It functions as a vector graphics engine that allows for the creation of portable documents containing formatted text, custom shapes, and organized page layouts. The library differentiates itself through a coordinate-based vector rendering system that supports multi-stop gradient fills, complex polygons, and layer-based blending. It provides a comprehensive typography system capable of embedding TrueType and OpenType fonts to support UTF-8 characters and right-to-left text for multilingual publ

    Ruby
    View on GitHub↗4,814
  • jung-kurt/gofpdfjung-kurt avatar

    jung-kurt/gofpdf

    4,468View on GitHub↗

    This is a Go-based PDF library used for the programmatic generation of PDF documents without relying on external C dependencies. It functions as a document generator, layout engine, security tool, and vector graphics engine for creating files containing text, images, and geometric shapes. The project distinguishes itself through a cell-based layout engine that manages automatic text wrapping, page breaks, and structured positioning. It provides specialized capabilities for vector graphics, including the rendering of Bézier curves and polygons, as well as a security toolkit for applying passwo

    Go
    View on GitHub↗4,468
Compare all 30 related projects→