NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
npm · #4462 most downloaded on npm
Create JavaScript PowerPoint Presentations
Last release 1 years ago
26 Jun 2025
Ships unpredictably
gaps range from 1 weeks to 1.9 years
Nearly every release is documented
notes for 46 of 46 stable releases
Nothing withdrawn
no release was ever pulled
10 years old
59 releases · first in 2016
Border is a string instead of a number in demo_tables.mjs \#1389 (hesi726)
One column per quarter.
Nothing published for this version
Nothing published for this version
Nothing published for this version
defineSlideMaster() issues when reusing config object \#406 (ronnyroeller)
textDirection property for text and table cells to allow vertical rotation of text (gitbrent)exports field to package.json to enable modern module resolution (gitbrent)react-demo under demos (gitbrent)Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Added selecting round or square line cap on line charts \#1126 (mathbruyen)
newAutoPagedSlides method to slide (resolves issue #625) #1133 (mikemeerschaert)autoPage duplicates text when text array is used #1139 (mikemeerschaert)holeSize=0 for doughnut chart #1180 (mathbruyen)Nothing published for this version
Added 2 new Chart props: plotArea and chartArea allowing fill and border for each (plotArea deprecates fill and border) \#1015 (hvstaden)
catAxisCrossesAt) #966 (parvezapathan)plotArea and chartArea allowing fill and border for each (plotArea deprecates fill and border) #1015 (hvstaden)bubble3D chart type #1108 (mathbruyen)data_convert which turns Excel (tab-delim) data to chart data type easily (gitbrent)addImage() with uppercase path prop causes "needs to repair presentation" #860 (mamodo123)addImage with tableToSlides() does not work #1103 (Strawberry0215)titlePos not working (gitbrent)react-scripts to v5.0.0 from v4 (gitbrent)Add name (objectName) to all core objects \#1019 (mvecsernyes)
objectName) to all core objects #1019 (mvecsernyes)ImageProps.sizing props w, h, x, y s/b typed Coord #1065 (Naveencheekoti17)ImageProps.sizing are type Coord #1066 (BistroStu)transparency doesn't work in table cell #1095 (pipipi-pikachu)Added overlap parameter to bar charts \#1010 (Norfaer)
encodeXmlEntities() for formatCode attributes #955 (dimfeld)valign) not working #1000 (kramsram)Table auto-paging completely re-written from scratch; finally handles complex-text (text runs) \#993 (gitbrent)
Added missing altText prop to ImageProps \#848 (yorch)
Alt Text to images \#848 (yorch)
background props) #968 (viral-sh)catAxisLine* and valAxisLine* props missing #980 (ln56b)Comprehensive Pull
Major Update: demo code (they're all .mjs modules now!); dropped support for IE11 (RIP!) in demo app.
BackgroundProps) - use ShapeFillProps insteadwrite()/writeFile() method string arguments are deprecated - props object in now the sole arg (WriteProps/WriteFileProps)
WriteProps/WriteFileProps)softBreakBefore #806 (memorsolutions)lineSpacingMultiple #855 (wangfengming)valAxisLogScaleBase #878 (rkspx)dataLabelFormatCode option creates corrupted file if the value includes quotes #834 (kornarakis) #884 (gazlo)Added: firstSliceAngle (Pie, Doughnut charts) \#666 (ghost) \#809 (cronin4392)
firstSliceAngle (Pie, Doughnut charts) #666 (ghost) #809 (cronin4392)color #389 (szilagyikinga) #793 (ReimaFrgos)titleBold option on chart settings #830 (twatson83)angleRange and arcThicknessRatio #547 (paolochiodi) #861 (apresmoi)catAxisLabelPos,valAxisLabelPos props #829 (twatson83)secondaryValAxis) check #832 (twatson83)addSection method missing return type in index.d.ts #833 (dylang)Fixed: Broken pptx has generated if used custom slide layout in v3.3.0 \#826 (yhatt)
demos.js to replace all fill:string with fill:ShapeFillProps (gitbrent)Added: Background image for slides (deprecated bkgd:string with background:BkgdOpts) \#610 (thomasowow)
addTable() method finally supports auto-paging, including support for repeating table headers!addText() method text layout engine has been rewritten from scratch and handles every type of layout case nowaddText() fit option ('none' | 'shrink' | 'resize') addresses long-standing issues with shrink/resize objects (new demo page as well)Buffer is unknown" issuefill property no longer accepts strings, only ShapeFill type now (sorry!)addTable() #262 (okaiyong)dataTableFormatCode and valLabelFormatCode #489 (phobos7000) #684 (hanzi)bkgd:string with background:BkgdOpts) #610 (thomasowow)shapeName to objects instead of default #724 (Offbeatmammal)valAxisDisplayUnitLabel Option #765 (hysh)addHeaderToEach finally duplicates all header rows, not just the first one #262 (okaiyong)colW length mismatch with colspans (Issue #651) #679 (Joshua-rose)rId is not working? #758 (kuldeept70)Buffer type from index.ts.d #761 (lustigerlurch551)fit prop, removed autoFit/shrinkText, new demo slide #779 (DonnaZukowskiPfizer) (ReimaFrgos)TableCell.text not correct (gitbrent)ITableOptions s/b TableOptions (gitbrent)Fixed: addTable, addText, etc. not working properly inside tableToSlides \#715 (Smithvinayakiya)
addTable, addText, etc. not working properly inside tableToSlides #715 (Smithvinayakiya)text prop and slideNumber align (gitbrent)rowW s/b rowH (gitbrent)barGapWidthPct (gitbrent)Added: New chart type: Stacked Area Charts \#333 (fordaaronj)
marginPt to control left indent margin #504 (Cyan005)index.d.ts #672 (Krishnakanth94)TypeScript: Add shapes and font options types \#650 (cronin4392)
pptx.ShapeType.rect, etc) in index.d.tspackage.json to avoid old "fs not found" Angular/webpack issue (Angular 8) #654 (cwilkens)getNewRelId] #655 (JuliaSheleva)core-shapes.ts file was removed, shape def collapsed to simple type array, rolled into core-enums.ts and index.d.tsAdded valAxisDispUnits \#606 (AmrutPatil)
valAxisDispUnits #606 (AmrutPatil)dataTableFontSize chart option #622 (MehdiAroui)showLeaderLines #642 (cronin4392)dataLabelPosition #644 (afarghaly10)package.json (gitbrent)Fixed: JSZip not found under Node.js \#638 (rse)
Existing applications MUST BE UPDATED to continue to function.
Existing applications MUST BE UPDATED to continue to function.
Host the Examples demo webpage online \#505 (multiplegeorges)
Removed: legacy/deprecated attributes from README javascript script tags \#431 (efx)
catAxisLabelRotate/valAxisLabelRotate) #378 (teejayvanslyke)catAxisLabelFontBold,dataLabelFontBold,legendFontFace,valAxisLabelFontBold #426 (BandaSatish07)catAxisMinVal and catAxisMaxVal #462 (vrimar)valAxisCrossesAt #474 (ReimaFrgos)fontSize float values #432 (efx)Added support for SVG images (browser only) \#401 (Krelborn)
addSlidesForTable() gitbrentRemove jquery-node dependency (fixes XSS Vulnerability Security Warning) \#350 (TinkerJack)
Highlights:
addImage() can now load both local ("../img.png") and remote images ("https://wikimedia.org/logo.jpg")jquery-node replaced with latest jquery package [only affects npm users]Fixed Bugs:
Implemented Enhancements:
addImage() updated with new code allowing both local and remote images to be used (browser and Node). (gitbrent)pptxgen.d.ts). (gitbrent)displayBlanksAs #365 (guipas)Shapes: How to add vertical lines \#272 (simonjcarr)
Fixed Bugs:
addMedia of type='online' not working? #335 (lndev1)getPageNumber() is missing from the "Slide Methods" documentation #353 (kumaarraja)Implemented Enhancements:
addImage() and addMedia() methods now accept URLs #325 (gitbrent)w and h attributes to slideNumber() #336 (s7726)HTML-to-PowerPoint is creating many extra columns with colspan \#284 (svaak)
Fixed Bugs:
Implemented Enhancements:
(See "Version 2.0 Breaking Changes" in the README for a complete list)
BREAKING CHANGES
examples/nodejs-demo.js) which now allows new instances/presentationsFixed Bugs:
Implemented Enhancements:
Fixed bug that was preventing 'chartColorsOpacity' from being anything other than 50 percent. (gitbrent)
Fixed Bugs:
newPageStartY option is not being honored by addSlidesForTable() #222 (shaunvdp)*AxisLineShow chart options do not work #231 (mconlin)Implemented Enhancements:
strike #238 (adrienco88)Vertical align and line break bug since update \#79 (mirkoint)
Fixed Bugs:
Implemented Enhancements:
Slide numbers wrap over 99 \#133 (sangramjagtap)
Fixed Bugs:
Implemented Enhancements:
Unable to edit data on line chart \#122 (david23zhu)
The width or the height must be an integer not a float \#29 (badlee)
Fixed Bugs:
Implemented Enhancements:
Hyperlink and font_face problem \#74 (ZouhaierSebri)
Fixed Bugs:
Implemented Enhancements:
Auto Paging does not include master template on additional slides \#61 (tb23911)
Fixed Bugs:
Implemented Enhancements:
Added image type to shapes to allow images to be placed on top of shapes, added more properties to ppt document \#53 (ericwgreene)
Fixed Bugs:
Implemented Enhancements:
addSlidesForTable() #42 (priyaraskar)author, company, revision, subject #53 (ericwgreene)Fixed issue with using percentages with x,y,w,h in addTable()
Fixed Bugs:
x,y,w,h in addTable()Implemented Enhancements:
pptxgenjs-demo.js) to hold all demo code - now used by both the browser and the node demos.Pagination for slideObj.addTable()? #21 (TheDorkSide74)
Implemented Enhancements:
slideObj.addTable()? #21 (TheDorkSide74)addText() #34 (itskun)save() #38 (alexanderpepper)Fixed Bugs:
Nothing published for this version
Nothing published for this version
Support for animated GIFs in addImage() #22 (shashank2104)
Implemented Enhancements:
addImage() #22 (shashank2104)slideNumber option allowing x and y placement of slide number #25 (priyaraskar)Trouble running in NW.js #19 (GregReser)
Nothing published for this version
Table formatting options set to default on empty cells #20 (rikvdk)
Add new options to addSlidesForTable() allowing for placement and size: x,y,w,h #18 (priyaraskar)
Implemented Enhancements:
addSlidesForTable() allowing for placement and size: x,y,w,h #18 (priyaraskar)Fixed Bugs:
Nothing published for this version
Nothing published for this version
The Slide addTable() method was modified to reduce the options passed from 2 objects to a single one.
Implemented Enhancements:
addTable() method was modified to reduce the options passed from 2 objects to a single one.Fixed Bugs:
addTable option is not working #15 (ninas880025)addSlidesForTable: table selectors made more specific by selecting only direct children now (nested tables would cause excessive looping) #14 (forrahul123)addText without an options objectAdded instructions to pptxgenjs.masters.js file, plus more examples and code
Added support for base64-encoded images
Implemented Enhancements:
Fixed Bugs:
Updated release with newest files.
Updated release with newest files.
Implemented enhancements:
cx and cy option keys to w and hFixed Bugs:
Initial Release
Initial Release
Your coding agent can read these notes before it upgrades. Set up the MCP server →