Skip to content

jitOffice/aippt

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

jit ppt Logo

AIPPT

Open-source AI-Powered Presentation Editor — Built with Vue 3

Vue 3 Vite TypeScript License PRs Welcome

🚀 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

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

Export

Developer Experience


🚀 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!

⭐ Star on GitHub

Releases

No releases published

Packages

 
 
 

Contributors