Skip to content
| Marketplace
Sign in
Visual Studio Code>Visualization>PowerPoint Viewer SidekickNew to Visual Studio Code? Get it now.
PowerPoint Viewer Sidekick

PowerPoint Viewer Sidekick

PrasertKana

|
377 installs
| (1) | Free
A read-only PowerPoint viewer for local and remote Visual Studio Code workspaces
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

PowerPoint Viewer Sidekick

A read-only PowerPoint viewer for Visual Studio Code with the same compact, native-feeling workflow as PDF Viewer Sidekick. It opens presentations from local folders, Remote SSH, WSL, Dev Containers, virtual workspaces, and other VS Code filesystem providers without copying them to a local path or uploading them to a service.

Current features

  • Default read-only editor for .pptx, .pptm, .ppsx, .ppsm, and .potx
  • Folder gallery of first-slide previews, with double-click to open in the viewer
  • Continuous slide scrolling with windowed rendering near the viewport
  • PowerPoint-style slide overview with resizable, lazy previews and keyboard navigation
  • PowerPoint-style slideshow mode: one slide per screen, VS Code chrome hidden, and slide transitions
  • Presenter laser pointer and pen, with ink kept per slide
  • Slide tone cycling between normal, inverted, and dimmed for dark themes
  • Save the current slide as a PNG image
  • Previous, next, direct-slide, Home, End, Page Up, and Page Down navigation
  • Full-presentation text search with snippets, match-case and whole-word modes
  • Active search-result highlighting on the rendered slide
  • Lazy slide thumbnails and an automatically derived slide-title outline
  • Fit-slide, fit-width, preset, custom, Ctrl/Cmd+wheel, and double-click zoom
  • Clockwise rotation
  • Selectable rendered text
  • Embedded SVG pictures, including PowerPoint's newer asvg:svgBlip format
  • Animated slides shown at their final static stage: entrances are visible, exits are hidden, and supported motion, rotation, and scale effects use their endpoints
  • Local-font detection with a missing-font indicator and automatic Aptos/Calibri/Arial-compatible fallback stacks
  • In-presentation and external hyperlinks
  • Per-URI slide, zoom, rotation, sidebar, and overview restoration
  • External-change notification and reload
  • Light, dark, and high-contrast VS Code theme integration
  • File-size confirmation and bounded ZIP parsing for untrusted presentations
  • Local and virtual/remote filesystem support

Presentation contents are parsed and rendered locally in the VS Code webview. The extension does not make network requests, execute VBA macros, or collect telemetry. Font diagnostics check only family names requested by the current presentation; the extension does not enumerate or copy installed fonts.

Commands

  • PowerPoint Viewer Sidekick: Open PowerPoint Presentation
  • PowerPoint Viewer Sidekick: Open Current Presentation in Viewer
  • PowerPoint Viewer Sidekick: Go to Slide
  • PowerPoint Viewer Sidekick: Find in Presentation
  • PowerPoint Viewer Sidekick: Toggle Navigation Sidebar
  • PowerPoint Viewer Sidekick: Toggle Slide Overview
  • PowerPoint Viewer Sidekick: Zoom In
  • PowerPoint Viewer Sidekick: Zoom Out
  • PowerPoint Viewer Sidekick: Rotate Clockwise
  • PowerPoint Viewer Sidekick: Reload Presentation
  • PowerPoint Viewer Sidekick: Cycle Slide Tone (Normal, Invert, Dim)
  • PowerPoint Viewer Sidekick: Save Slide as Image
  • PowerPoint Viewer Sidekick: Start Slideshow
  • PowerPoint Viewer Sidekick: Exit Slideshow
  • PowerPoint Viewer Sidekick: Open in Desktop (PowerPoint)
  • PowerPoint Viewer Sidekick: Browse Presentations in Folder

Folder gallery

PowerPoint Viewer Sidekick: Browse Presentations in Folder opens a grid of first-slide previews for every presentation in one folder. The same command sits on the explorer context menu for folders and presentations, and on the viewer toolbar, where it browses the folder holding the open presentation.

Double-click a preview to open that presentation in the viewer. A single click selects; the arrow keys, Home, and End move the selection, and Enter or Space opens it. Each tile also carries buttons to open the presentation in the viewer, open it in desktop PowerPoint, and reveal it in the explorer.

The toolbar filters by name, sorts by name, date modified, or file size, sets the preview size, and toggles subfolders. Sort order, preview size, and the subfolder choice are remembered for the next gallery; the filter always starts empty.

Previews are rendered only while a tile is near the viewport and are released again once it scrolls away, so a folder of large decks does not hold every presentation in memory. Only the first slide of each presentation is parsed in detail, at most two at a time. Presentations above powerpointSidekick.gallery.previewSizeLimitMB are listed without a preview, and the gallery reloads itself when presentations in the folder are added, changed, or removed.

Slideshow

Press the play button in the viewer toolbar (or run PowerPoint Viewer Sidekick: Start Slideshow) to present the presentation one slide per screen. The slideshow starts on the current slide, so selecting a thumbnail in Slide Overview first — or pressing Shift+Enter on it — presents from there.

Key Action
Space, Enter, →, ↓, Page Down Next slide
Backspace, ←, ↑, Page Up Previous slide
Home, End First or last slide
B Blank the screen to black; any key resumes
W Blank the screen to white; any key resumes
L Toggle the laser pointer
P Toggle the pen
E Erase the ink on this slide
Escape Put the laser or pen away, then end the slideshow

Clicking a slide advances it, right-clicking goes back, and the mouse wheel moves one slide per gesture. A control bar and slide counter fade in when the pointer moves and fade out again while it is still.

Pen strokes are stored per slide in slide-relative coordinates, so going back to an annotated slide shows the ink again, and it stays anchored to the same spot on the slide when the window is resized. Ink lives only for the duration of the slideshow and is never written to the presentation. While the pen is armed, clicking draws instead of advancing.

A slideshow hides the window chrome with VS Code's Zen Mode, which also takes the window full screen unless zenMode.fullScreen is turned off. VS Code exposes no way to read the current Zen Mode state, so starting a slideshow while Zen Mode is already on leaves it, and exiting turns it back on; set powerpointSidekick.slideshow.enterZenMode to false to leave the window chrome alone. The slideshow is not part of the saved view state, so it never resumes on its own when a presentation is reopened, and it ends when its editor tab is hidden or closed.

Slide tone and slide images

The slide tone button cycles the rendered slide between normal, inverted, and dimmed, which makes a white slide bearable inside a dark theme. The tone is remembered per presentation alongside slide, zoom, and rotation, and it applies to thumbnails and Slide Overview too.

The camera button saves the current slide as a PNG next to the presentation. The export renders a detached copy of the slide, so the saved image carries the presentation's real colors no matter which slide tone is on screen, and it is written through the workspace filesystem so it works over Remote SSH and in virtual workspaces.

Settings

  • powerpointSidekick.defaultZoom
  • powerpointSidekick.rememberViewState
  • powerpointSidekick.fileSizeWarningMB
  • powerpointSidekick.slideshow.transition
  • powerpointSidekick.slideshow.showSlideCounter
  • powerpointSidekick.slideshow.advanceOnClick
  • powerpointSidekick.slideshow.wheelAdvance
  • powerpointSidekick.slideshow.controlsIdleTimeoutMs
  • powerpointSidekick.slideshow.enterZenMode
  • powerpointSidekick.slideshow.penColor
  • powerpointSidekick.slideshow.penWidth
  • powerpointSidekick.gallery.thumbnailWidth
  • powerpointSidekick.gallery.sortBy
  • powerpointSidekick.gallery.includeSubfolders
  • powerpointSidekick.gallery.previewSizeLimitMB
  • powerpointSidekick.gallery.maxFiles

Format support and limitations

The viewer supports PowerPoint Open XML packages. Legacy binary .ppt files are intentionally not registered. Macro-enabled packages can be viewed, but macros are never executed.

PowerPoint's format is extensive, so some content may be approximated or omitted. Animations do not play: the viewer resolves entrance/exit visibility, paragraph exits, motion, rotation, and scale to a final static stage. Emphasis/color effects, media commands, and complex timing may be approximated or ignored, and slide transitions do not play. Other current renderer limitations include 3D effects and true 3D charts, equations, slide notes, embedded OLE objects, and full EMF/WMF vector rendering. Password-protected presentations are not supported. Editing, printing, and slide reordering are not implemented; source files are never modified.

Development

npm install
npm run typecheck
npm test
npm run build

Press F5 in VS Code to launch an Extension Development Host. Run npm run test:integration for the VS Code smoke test and npm run package to produce a VSIX.

PowerPoint rendering is provided by @aiden0z/pptx-renderer under the Apache-2.0 license. Its license is included in packaged builds.

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
  • Your Privacy Choices
  • Consumer Health Privacy
© 2026 Microsoft