Our take
- Activity
- 20
- Community
- 44
- Issues
- 21
- Pull requests
- 21
+62 stars in the last 15 days
Overview
PptxGenJS is a JavaScript and TypeScript library for creating PowerPoint presentations programmatically. It produces OOXML .pptx files, so developers can generate slides without requiring PowerPoint to be installed.
It is useful when presentations need to be created as part of an application, report, or automated workflow rather than assembled manually. The library supports Node.js and browser environments, including integrations with React and other modern web stacks.
Key Features
- Add text, shapes, images, tables, charts, and media to slides.
- Create reusable slide masters for consistent branding and layouts.
- Generate output for PowerPoint, Keynote, LibreOffice Impress, and Google Slides import.
- Run in Node.js or modern browsers, with CommonJS and ES module builds.
- Export presentations as files, browser downloads, base64, Blob, Buffer, or Node streams.
- Convert HTML tables into formatted PowerPoint slides.
- Use TypeScript definitions and example demos to explore the API.
Use Cases
- Generate recurring business or academic reports from application data.
- Add presentation export to a web product or dashboard, useful when users need offline slides.
- Create branded presentations from templates with reusable master layouts.
- Turn web-based tables or data grids into slides for sharing and meetings.
- Automate slide creation in Node.js scripts, APIs, or serverless functions.
Getting Started
Install the package with npm:
npm install pptxgenjs
See the README and official documentation for examples and API details.
Considerations
- The library generates presentation files from code; it is not a visual slide editor.
- Output compatibility depends on the application used to open the generated OOXML files. The project lists PowerPoint, Keynote, and LibreOffice Impress as compatible, and Google Slides via import.
- The README recommends using its demos when troubleshooting and asks users to include a code example when reporting issues.
- The repository is not archived and was last pushed on 2025-11-28, based on the provided repository data.
Found this useful?
Share it with someone who would like PptxGenJS.