PPTX Viewer

unlisted

by dengjingrong

Preview PowerPoint .pptx files with an in-app document-style viewer, thumbnails, zoom controls, and local-only rendering.

Updated 1mo agoMIT
View on GitHub

PPTX Viewer

pptx-viewer previews .pptx files with an in-app document-style viewer, thumbnail navigation, and a pure local rendering pipeline.

Repository: https://github.com/thefatheroffire/Obsidian-ppt

Disclosures

  • Desktop only
  • Local-only rendering
  • No network requests
  • No telemetry
  • Opens files in the system default application only when the user explicitly clicks the fallback button

Features

  • Opens .pptx files in a dedicated in-app view via registerExtensions(["pptx"], "pptx-viewer")
  • Reads PPTX binaries from the current vault
  • Renders slides as a vertically scrollable document
  • Includes zoom in, zoom out, fit width, and reload controls
  • Includes a thumbnail sidebar with active-slide highlighting and click-to-jump navigation
  • Shows file-level warnings for partially supported content
  • Remembers reading position and zoom per PPTX file
  • Falls back to "Open in default app" when rendering fails
  • Tracks current zoom in the status bar
  • Adds command palette entries and a file-menu entry

Install

  1. Copy this folder into .obsidian/plugins/pptx-viewer/
  2. Run npm install
  3. Run npm run build
  4. Enable the plugin in Obsidian Community Plugins

Community release packaging

  1. Run npm install
  2. Run npm run release
  3. Collect the files from dist/pptx-viewer/

The release folder is self-contained for Obsidian deployment and does not require shipping node_modules/.

Repository notes

  • This source repository should commit main.ts and other source files, but should not rely on committing built release artifacts.
  • For an Obsidian community release, publish the files from dist/pptx-viewer/ as release assets.
  • The current repository URL is https://github.com/thefatheroffire/Obsidian-ppt.

Known limitations

  • Rendering fidelity depends on the installed pptxviewjs runtime
  • Animations, transitions, embedded OLE objects, SmartArt, and some formulas are intentionally downgraded
  • Very large decks can take longer to parse and repaint during zoom changes

Future enhancements

  • Searchable slide text extraction
  • Syncing reading position across multiple leaves
  • Full-screen presentation mode
  • Optional support for .ppt import or slide image export

For plugin developers

Search results and similarity scores are powered by semantic analysis of your plugin's README. If your plugin isn't appearing for searches you'd expect, try updating your README to clearly describe your plugin's purpose, features, and use cases.