PPTist: A Developer-Focused Web Presentation Editor Built on Vue 3
PowerPoint-ist(/'pauəpɔintist/), An online presentation application that replicates most of the commonly used features of MS PowerPoint, allowing for the editing and presentation of PPT online. It also supports AIPPT and local PPTX file preview.
At a glance
- What is it?
- PPTist is a Vue 3 and TypeScript web application that replicates most of the common features of Microsoft PowerPoint in a browser. It is intended for developers building web-based presentation products, not for end users who need a ready-made editing tool.
- Who is it for?
- PPTist is the right foundation for developers who want to build a custom web-based presentation product and need a starting point with a broad feature set and working PPTX import and export. It is not suitable for end users looking for a ready-made editor, nor for teams whose core goal is pixel-perfect Microsoft PowerPoint compatibility: the README explicitly states that 100% fidelity is not achievable and that users should evaluate with their own sample files.
- Can I use it commercially?
- Yes, with strict conditions. AGPL-3.0 is a network copyleft licence: if people use a modified version over a network, for example as a hosted service, you must offer them its source code under the same licence.
- Is it still maintained?
- Yes. The repository last received commits 11 days ago.
- What is it written in?
- Mainly Vue, according to GitHub's language statistics.
Answers come from the project's GitHub data, last synced on September 30, 2026, and from our analysis. They are not legal advice.
Editorial analysis
What PPTist Is and Who It Is For
PPTist is described in the README as a web slide editing and presentation application, and that positioning is precise. It is built for developers who have web development experience and need a foundation for a custom presentation product. The README states clearly that the provided demo link offers no online service and that the project should not be used directly as a finished tool.
The primary target use case, rated at the highest recommendation level in the README, is building a presentation product that is different from Microsoft PowerPoint rather than a relay station for PowerPoint files. PPTist's core strength is its editing experience and the breadth of supported slide elements: text, images, shapes, lines, charts, tables, videos, audio, and math formulas.
The project explicitly lists scenarios where it is not recommended: low-code platforms, H5 editors, image editors, and whiteboards. For those use cases, the README suggests finding open-source projects that better match those scenarios. This is useful information that narrows the audience and prevents misuse.
Feature Coverage and the Editing Experience
PPTist covers the features that make up most of a real presentation workflow. Slide-level features include background settings with solid color, gradient, and image options; gridlines and rulers; canvas zoom and move; theme settings; transition animations; and element animations with entrance, exit, and emphasis types. There is a selection panel for hiding elements, sorting layers, and naming elements.
Element-level features are detailed. Text elements support rich text editing with color, highlight, font size, bold, italic, underline, strikethrough, subscript, inline code, quotes, hyperlinks, numbered lists, bullet points, paragraph indent, and more. Charts use ECharts, which is listed as a dependency in package.json. Tables support rich text in cells, merging, background colors, borders, and custom column widths.
The editing experience includes context menus everywhere, dozens of keyboard shortcuts, magnetic alignment when moving or scaling elements, and batch editing of multiple selected elements. These details matter for a developer building a product that users will compare to desktop PowerPoint, because the gap in editing refinement is often what makes web editors feel unfinished.
Installing PPTist and Running the Development Server
PPTist requires Node.js version 20 or later. The setup follows the standard Vite project pattern:
npm installAfter dependencies are installed, start the development server:
npm run devThe application runs at http://127.0.0.1:5173/ in the browser. The package.json lists a build script for production:
npm run buildThe project uses Vite as the bundler, Vue 3 as the framework, pinia for state management, and ProseMirror for rich text editing inside slide elements. The key PPTX-related packages are pptxgenjs (for export) and pptxtojson (for import), both declared as runtime dependencies. The project does not rely on UI component libraries for its interface, which the README notes makes styling customization more accessible.
AIPPT Integration and the AI Schema
PPTist supports AI-driven presentation generation through two approaches. The first is template-based AIPPT, where an AI generates content that fills a predefined slide template structure. The second is direct data generation: the README references an AI_PPT_SCHEMA.md file in the repository that defines the data structure for AI to generate slide page data directly.
The README rates AIPPT integration at a two-star recommendation level, not five stars. The reason given is candid: the final result depends heavily on model capabilities, prompt design, and asset generation, and PPTist is better suited as a foundation for carrying and editing structured generation results rather than as an out-of-the-box AI PPT product.
This framing is useful for developers evaluating whether to build an AI presentation tool on PPTist. The data structure is documented, the rendering engine is production-ready, but the AI orchestration layer is the developer's responsibility.
PPTX Import and Export Fidelity Boundaries
The README gives concrete fidelity estimates: PPTX import achieves roughly 85% or higher overall fidelity, and PPTX export achieves roughly 95% or higher. These numbers reflect the complexity of the PPTX ecosystem.
On the import side, the README identifies specific scenarios that produce fidelity differences: animations, special charts, deeply nested structures, non-standard elements, and some advanced styles. Teams that need to preview or lightly edit existing PowerPoint files should test with their actual sample files before committing.
On the export side, fidelity differences arise from features that exist in PPTist but have no direct equivalent in the PPTX format: custom nodes, layouts, and features that a developer adds when extending PPTist. These customizations simply cannot survive a round-trip through the PPTX format.
The README rates PPTist as a two-star recommendation for use as an Office PPT authoring tool, with the explicit note that if the core goal is to fully replace Microsoft PowerPoint, teams should evaluate and make trade-offs with their actual business documents.
PPTist vs. Reveal.js
Reveal.js is the most widely deployed web-based presentation framework. The fundamental difference is that Reveal.js is a presentation engine for developer-authored content: slides are written in HTML, Markdown, or JavaScript. There is no GUI editor in the core Reveal.js project. It targets developers who want programmatic control over presentation content.
PPTist is a full editing application with a GUI. Users manipulate elements directly on a canvas. This makes PPTist appropriate as the foundation for a product that non-developer users will operate, while Reveal.js is appropriate for developer-generated content or presentations embedded in documentation sites.
Reveal.js uses an MIT license with no restrictions on commercial use or source disclosure. PPTist uses AGPL-3.0, which requires that modifications and derivative networked services be distributed under the same license. For teams building a commercial web presentation product, that license difference is the deciding factor.
AGPL-3.0 License and Commercial Use
PPTist is licensed under AGPL-3.0. The README includes a section on commercial use in Chinese (the project originated from a Chinese-speaking developer), which indicates that commercial licensing questions are a real concern for the project's audience.
AGPL-3.0 is stricter than GPL in one respect: any software that runs a modified version of an AGPL-licensed project over a network must make the source code of that network service available to users. For a web presentation editor, this means a company that builds a SaaS product on PPTist must release its modified source code to anyone who uses the service.
Developers who need to build a commercial product without source disclosure obligations should evaluate whether a commercial license from the author is available, or consider building on Reveal.js or another MIT-licensed alternative instead. The AGPL requirement is not a defect; it is a deliberate choice by the author that determines who the right user of the project is.
Editorial conclusion
PPTist is the right foundation for developers who want to build a custom web-based presentation product and need a starting point with a broad feature set and working PPTX import and export. It is not suitable for end users looking for a ready-made editor, nor for teams whose core goal is pixel-perfect Microsoft PowerPoint compatibility: the README explicitly states that 100% fidelity is not achievable and that users should evaluate with their own sample files. The AGPL-3.0 license requires that derivative web applications make their source code available, which is a significant constraint for commercial products. Verify that constraint before building on PPTist.
Frequently asked questions
Does PPTist support exporting presentations to PPTX format?
Yes. PPTist exports to PPTX with roughly 95% or higher overall fidelity, according to the README. Some content unique to PPTist, such as custom nodes or extended element types added during development, will not survive export to PPTX since those features have no equivalent in the PPTX format.
Can PPTist be used as a ready-made presentation tool by end users?
No. The README explicitly states that the project should not be used directly as a tool and does not support out-of-the-box use. The demo link is for demonstration purposes only and provides no online service. PPTist is intended as a developer foundation for building a custom presentation product.
What does the AGPL-3.0 license require for PPTist?
AGPL-3.0 requires that any entity running a modified version of PPTist as a networked service must make the source code of that service available to its users. Teams building a commercial web application on PPTist need to verify whether this requirement is compatible with their product's distribution model before proceeding.
Official sources
Add this badge to your README
If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.
[](https://hysenlabs.com/projects/pipipi-pikachu-pptist)