AIPPT
March 10, 2026 ยท View on GitHub
AIPPT
Open-source AI-Powered Presentation Editor โ Built with Vue 3
๐ Live Demo ยท ๐ Docs ยท ๐ Issues ยท ๐ฌ Discussions ยท ๐จ๐ณ ไธญๆๆๆกฃ
โจ What is AIPPT(JitPPT)?
AIPPT.cc is a feature-rich, open-source AI presentation editor that lets you create stunning slide decks in seconds. It integrates mainstream LLMs directly in the browser โ DeepSeek, GPT, Claude, Gemini, Kimi, Qwen, and more โ with a zero-backend-required mode for instant local use.
One-click demo, no registration needed. Just click "Try Demo" on the login page.
๐ฏ Core Highlights
| Feature | Description |
|---|---|
| ๐ค Multi-LLM Support | DeepSeek, OpenAI, Claude, Gemini, Kimi, Qwen, GLM, Doubao, Grok, MiniMax โ all with your own API key |
| โก AI Slide Generation | Generate full presentations from a single prompt, streamed in real-time |
| ๐จ Visual Slide Editor | Drag-and-drop canvas, rich formatting, ECharts charts, mind maps, tables |
| ๐ Smart Chart Detection | Auto-detects data structure and recommends the best chart type |
| ๐ AI Voice Assistant | Speech-to-text editing powered by iFlytek ASR |
| ๐ i18n (8 Languages) | ็ฎไฝไธญๆ, ็น้ซไธญๆ, English, ๆฅๆฌ่ช, ํ๊ตญ์ด, Bahasa, เนเธเธข, Tiแบฟng Viแปt |
| ๐ Custom LLM Endpoint | Plug in any OpenAI-compatible API endpoint |
| ๐ค Multi-format Export | Export to PDF, PPTX, PNG/images via jsPDF & PptxGenJS |
| ๐งฉ Agent Architecture | Layered AI agent system (Core / Memory / Skills) for extensible AI features |
| ๐ Privacy First | API keys stored only in your browser's localStorage โ never sent to our servers |
๐ Tech Stack
Frontend Core
- Vue 3 + Composition API +
<script setup> - Vite 5 โ lightning-fast dev server & build
- TypeScript โ type-safe composables & utilities
- Pinia โ lightweight state management
- Vue Router 4 โ SPA routing with auth guards
UI & Styling
- Arco Design Vue โ enterprise-grade component library
- UnoCSS โ atomic CSS engine
- Konva.js โ canvas rendering for slide editor
- Iconify โ 200,000+ unified icons
AI & LLM
- Streaming SSE โ real-time token streaming via
fetch+ReadableStream - Smart Model Router โ automatic model selection based on task context
- Multi-provider Architecture โ OpenAI-compatible API abstraction layer
- Agent System โ Core Orchestrator + Context Memory + Skill Registry
Rich Content
- ECharts 5.5 โ interactive data visualizations
- AntV G2 โ declarative charting
- Mind Elixir โ mind map editor
- Tiptap โ rich text editing with math/LaTeX
- KaTeX โ fast LaTeX math rendering
- Mermaid โ diagram and flowchart support
- highlight.js + Shiki โ code syntax highlighting
Export
- jsPDF โ PDF export
- PptxGenJS โ PPTX export
- html2canvas + html-to-image โ slide screenshot
Developer Experience
- unplugin-auto-import โ auto-import Vue APIs
- unplugin-vue-components โ auto-import components
- ESLint + Prettier โ consistent code style
- VueUse โ collection of essential Vue composables
๐ Quick Start
Prerequisites
- Node.js โฅ 18
- pnpm โฅ 8 (
npm install -g pnpm)
Installation
# Clone the repo
git clone https://github.com/MrXujiang/aippt.git
cd aippt
# Install dependencies
pnpm install
# Copy environment config
cp .env.example .env
Configuration
Edit .env with your preferred LLM API key:
# Use any one (or more) of these providers:
VITE_DEEPSEEK_API_KEY=sk-...
VITE_OPENAI_API_KEY=sk-...
VITE_KIMI_API_KEY=...
VITE_GLM_API_KEY=...
VITE_QWEN_API_KEY=...
# (Optional) Demo account for one-click login
VITE_DEMO_ACCOUNT=demo@aippt.cc
VITE_DEMO_PASSWORD=demo123456
# (Optional) Image search APIs
VITE_PEXELS_API_KEY=...
VITE_UNSPLASH_ACCESS_KEY=...
No API key? No problem โ use the built-in Demo mode or connect to your own backend trial endpoint.
Run
pnpm dev
Open http://localhost:5173 and click "Try Demo" to get started instantly.
๐ฆ Build
# Production build
pnpm build
# Preview production build
pnpm preview
๐ Project Structure
src/
โโโ agents/ # AI agent system (Core / Memory / Skills)
โ โโโ core/ # AgentOrchestrator + SkillRouter
โ โโโ memory/ # ContextManager โ conversation history
โ โโโ skills/ # Skill implementations (text, chart, layout, image...)
โโโ api/ # REST API clients (auth, document, presentation, AI...)
โโโ components/ # Reusable UI components
โ โโโ slide-page/ # Slide editor sub-components (toolbar, panels, canvas...)
โโโ composables/ # Vue composables (AI generation, document ops, shortcuts...)
โโโ locales/ # i18n JSON files (zh, en, ja, ko, id, th, vi, zh-Hant)
โโโ router/ # Vue Router with auth guards
โโโ utils/
โ โโโ ai/ # LLM providers, streaming, model router
โ โโโ export/ # PDF / PPTX / image export
โ โโโ import/ # PPTX / Markdown import
โ โโโ slide/ # Slide rendering & layout utilities
โโโ views/
โโโ login.vue # Auth page with demo one-click login
โโโ home.vue # Workspace dashboard
โโโ ai-create.vue # AI presentation creation flow
โโโ slide-page/ # Full-featured slide editor (100KB+ canvas engine)
๐ค Supported LLM Providers
| Provider | Models | Key Source |
|---|---|---|
| DeepSeek | deepseek-chat, deepseek-reasoner | platform.deepseek.com |
| OpenAI | GPT-4o, GPT-5.2, o1, o1-mini | platform.openai.com |
| Claude | Claude 3.5 Sonnet, Claude Opus 4.5 | console.anthropic.com |
| Gemini | Gemini 2.5 Pro/Flash | aistudio.google.com |
| Kimi | Kimi K2 | platform.moonshot.cn |
| Qwen | Qwen3-Max, Qwen-Plus | dashscope.aliyuncs.com |
| GLM | GLM-4.7, GLM-4-Air | open.bigmodel.cn |
| Doubao | Doubao Seed 1.6 | console.volcengine.com |
| Grok | Grok 4, Grok 3 | console.x.ai |
| MiniMax | MiniMax M2.1 | api.minimaxi.com |
| Custom | Any OpenAI-compatible endpoint | โ |
๐จ Features Overview
AI Presentation Creation
- Describe your topic โ AI generates a full slide deck with charts
- Real-time streaming preview as content is generated
- Smart task routing: automatically picks the best model for the job
- Fallback to backend trial API when no personal API key is set
Slide Editor
- Canvas Engine โ pixel-perfect drag, resize, rotate, multi-select
- Component Library โ text boxes, images, shapes, charts, tables, code blocks, QR codes
- ECharts Integration โ live chart data editor with 20+ chart types
- Mind Map โ powered by Mind Elixir with full edit support
- AI Chat Panel โ in-editor AI assistant for slide-level suggestions
- Theme Manager โ global theme switching with color palette
- Keyboard Shortcuts โ full keyboard navigation (undo/redo, copy/paste, align...)
- Auto-save โ debounced cloud sync
Import / Export
- Import: PPTX (via xml2js), Markdown (Slidev-compatible)
- Export: PDF (jsPDF), PPTX (PptxGenJS), PNG/JPG (html-to-image)
Collaboration-Ready
- JWT auth with localStorage persistence
- GitHub OAuth integration
- Document permission model (private / read-only / collaborative edit)
- Multi-user awareness hooks
๐ Internationalization
The entire UI is fully localized in 8 languages and auto-detected from browser settings:
| Language | Code |
|---|---|
| ็ฎไฝไธญๆ | zh |
| ็น้ซไธญๆ | zh-Hant |
| English | en |
| ๆฅๆฌ่ช | ja |
| ํ๊ตญ์ด | ko |
| Bahasa Indonesia | id |
| เนเธเธข | th |
| Tiแบฟng Viแปt | vi |
๐ค Contributing
Contributions are welcome! Please read CONTRIBUTING.md before submitting a PR.
# Fork the repo, then:
git checkout -b feat/your-feature
# Make your changes
pnpm lint && pnpm format
git commit -m "feat: your feature description"
git push origin feat/your-feature
# Open a Pull Request
๐ License
MIT ยฉ AIPPT Contributors
If this project helps you, please give it a โญ โ it means a lot!