Skip to content

About

No description, website, or topics provided.

Resources

Stars

79 stars

Watchers

1 watching

Forks

Latest commit

Β 

History

64 Commits

Folders and files

NameName
Last commit message
Last commit date
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation


ζ™Ίθƒ½ζΌ”η€ΊεΌ•ζ“ŽοΌŒη”ŸζˆδΈ‡η‰©
Intelligent Presentation Engine, Generating Everything

GitHub Repo stars license issue resolution open issues

δΈ­ζ–‡ | English

SlideAgent - Enables Everyone to Easily Create Professional Presentations

SlideAgent is an open-source, AI-driven presentation generator. Provide a topic or documents, and it produces an outline, slide content, and a themed deck with online preview and multi-format export.

If this helps you, please consider starring the repo ✨

SlideAgent Homepage

🚧 Project Status

This project is still under active development and gradually improving:

  • βœ… Core features are basically implemented
  • πŸ”„ API interfaces may be adjusted
  • πŸ“ Documentation is being continuously updated

Welcome to try it out and provide feedback!

πŸŽ‰ News

  • [2026/03] Major version update, architecture reorganization.
  • [2026/02] Add The Function of Online Search.
  • [2026/01] "See-What-You-Get" PPT Export Function.

✨ Highlights

  • AI PPT Generation β€” Automatically generates outlines, content, and designs
  • Knowledge Base β€” Upload documents and generate PPTs from your own materials
  • Online Preview & Editing β€” Preview slides in the browser and edit text directly
  • Online Sharing β€” Generate share links with expiration settings
  • Task Queue β€” Batch processing with backend queue
  • PPTX Export Service β€” Dedicated export_tool service converts HTML slides to editable PPTX

βœ… Current Status

  • Conversational Editing β€” Keep refining slides via dialogue
  • Multi-version Management β€” Save, compare, and rollback versions
  • Content Editing β€” Edit slide text directly in the preview
  • Online Preview β€” Real-time PPT preview in the browser
  • Export β€” PDF / HTML / PPTX export (PPTX styles may be lost; improving)
  • Task Status β€” Global persistence of agent task status

🧭 Roadmap

  • Database Search Tool β€” Call knowledge base tools directly

πŸš€ Quick Start

Prerequisites

  • Docker and Docker Compose
  • Git

Run with Docker Compose

  1. Clone the repository

    git clone https://github.com/Mrguanglei/SlideAgent.git
    cd SlideAgent
  2. Configuration (Optional) Copy .env.example to .env and modify as needed:

    cp .env.example .env

    You can configure database and LLM API settings in the .env file.

  3. Build and start services

    docker-compose up --build -d

Supported Model Providers API (Tested)

Provider/Series Model Status Notes
Zhipu AI GLM-5 βœ… Supported
GLM-4 Series βœ… Supported
GLM-4-Plus βœ… Supported
GLM-4-Flash βœ… Supported
DeepSeek DeepSeek-V3 βœ… Supported
DeepSeek-V3.2 βœ… Supported
DeepSeek-R1 βœ… Supported
MiniMax MiniMax-Text Series βœ… Supported
ByteDance (Doubao) Doubao-1.8 βœ… Supported
Doubao-pro βœ… Supported
Kimi kimi-k2-turbo-preview βœ… Supported
Alibaba Cloud Qwen-Max βœ… Supported
Qwen-Plus βœ… Supported
Intern (Shanghai AI Lab) intern-s1-pro βœ… Supported

🚧 TODO (Not Tested)

Provider/Series Model Status Notes
OpenAI GPT-4o 🚧 Not Tested Compatibility mode pending verification
GPT-4o-mini 🚧 Not Tested
Anthropic Claude 3.5 Sonnet 🚧 Not Tested
Claude 3 Opus 🚧 Not Tested
Baidu ERNIE 4.0 🚧 Not Tested
Moonshot AI Kimi k1.5 🚧 Not Tested
01.AI Yi-Large 🚧 Not Tested
... .... 🚧 Not Tested

🧩 PPTX Export Service (HTML -> PPTX)

  • Service: export_tool (FastAPI) runs independently and is started by Docker Compose
  • Pipeline: Backend /api/ppt/export -> export_tool /api/export_tool/pptx
  • Tech: Playwright (Chromium) renders HTML, dom-to-pptx converts to PPTX, with font embedding and icon assets
  • Details: See export_tool/README.md for API usage and deployment notes

βš™οΈ Environment Variables

Create a .env file in the project root directory to override default configurations.

Variable Default Value Description
POSTGRES_DB pptagent Database name
POSTGRES_USER pptagent Database username
POSTGRES_PASSWORD pptagent Database password
DATABASE_URL postgresql+asyncpg://... Database connection string
PPTAGENT_API_BASE_URL https://open.bigmodel.cn/api/paas/v4/ PPT generation LLM API base URL
PPTAGENT_API_KEY your_api_key PPT generation LLM API key
PPTAGENT_MODEL glm-4-flash PPT generation LLM model
KNOWLEDGE_LLM_BASE_URL PPTAGENT_API_BASE_URL Knowledge base LLM API base URL
KNOWLEDGE_LLM_API_KEY PPTAGENT_API_KEY Knowledge base LLM API key
KNOWLEDGE_LLM_MODEL glm-4-flash Knowledge base LLM model
KNOWLEDGE_EMBEDDING_MODEL embedding-3 Knowledge base embedding model
KNOWLEDGE_UPLOAD_DIR /tmp/knowledge_uploads Knowledge base upload directory

πŸ“Έ Screenshots

Home Chat Generation
Home Chat Generation
Knowledge Base Global Search
Knowledge Base Global Search
Online Editing Multiple Downloads
Online Editing Multiple Downloads

πŸ› οΈ Project Structure

.env.example         # Environment variables example
docker-compose.yml   # Docker compose configuration
README.md            # Project documentation

backend/             # Python backend (FastAPI)
β”œβ”€β”€ services/        # Core services (export, sharing, knowledge base)
β”œβ”€β”€ routers/         # API routes
β”œβ”€β”€ database/        # Database models and CRUD
β”œβ”€β”€ api_server.py    # FastAPI server entry point
β”œβ”€β”€ requirements.txt # Python dependencies
└── Dockerfile

frontend/            # React frontend (Vite)
β”œβ”€β”€ src/
β”‚   β”œβ”€β”€ pages/       # Page components (Home, Knowledge, ShareView)
β”‚   β”œβ”€β”€ components/  # Reusable components (Sidebar, Modals, etc.)
β”‚   β”œβ”€β”€ lib/         # API requests, utility functions
β”‚   └── types/       # TypeScript type definitions
β”œβ”€β”€ package.json     # Node.js dependencies
β”œβ”€β”€ vite.config.ts   # Vite configuration
└── Dockerfile

export_tool/         # Export service (PDF/PNG/HTML/PPTX)
β”œβ”€β”€ app/             # FastAPI app and services
β”œβ”€β”€ dom-to-pptx/     # HTML -> PPTX core library
β”œβ”€β”€ fonts/           # Font assets for embedding
└── Dockerfile

🀝 Contributing

All forms of contributions are welcome! If you have any ideas or suggestions, feel free to submit Pull Requests or create Issues.

πŸ™ Acknowledgments

  • Intern-S1 Pro - The Shanghai Artificial Intelligence Laboratory provides computing power support.
  • shadcn/ui - Frontend UI component library.
  • FastAPI - High-performance Python web framework.
  • React - JavaScript library for building user interfaces.
  • dom-to-pptx - The static library for exporting pptx

πŸ–ŠοΈ Citation

@misc{2026SlideAgent,
    title={SlideAgent: Enables Everyone to Easily Create Professional Presentations},
    author={SlideAgent Contributors},
    howpublished = {\url{https://github.com/Mrguanglei/SlideAgent}},
    year={2026}
}

πŸ“„ License

This project is licensed under CC BY-NC-SA 4.0 (Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International).

  • Attribution β€” You must give appropriate credit
  • NonCommercial β€” You may not use the material for commercial purposes
  • ShareAlike β€” If you remix, transform, or build upon the material, you must distribute your contributions under the same license

If this helps you, please consider starring the repo ✨

About

No description, website, or topics provided.

Resources

Stars

79 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors