Presenton is an open source AI presentation generation tool designed to help users quickly create professional slideshows. It supports local operation to protect data privacy and avoid uploading sensitive information to the cloud. Users can generate content from AI models such as OpenAI, Gemini, or Ollama, with support for custom HTML and Tailwind templates and a wide choice of themes.Presenton also provides an API interface that allows developers to generate presentations upon request. It is compatible with a variety of image generation tools such as DALL-E 3 and Pexels, and is suitable for individuals and teams who need to create presentations efficiently. The project is hosted on GitHub and has active community support for developers and business users.
Function List
- Support OpenAI, Gemini, Ollama and other mainstream AI models to generate presentation content.
- Provides an API interface that allows slides to be generated via HTTP requests.
- Supports customized HTML and Tailwind templates to fit a variety of design needs.
- Integration with image generation or acquisition tools such as DALL-E 3, Pexels, Pixabay, and more.
- Support for running Ollama models locally ensures data privacy.
- Offers a wide range of themes to choose from, such as classic, modern, and professional.
- Support uploading PDF, TXT, PPTX, DOCX files and extracting contents to generate slide shows.
- GPU acceleration support to improve the efficiency of large model generation.
Using Help
Installation process
Presenton is primarily deployed via Docker, ensuring that users can quickly run it locally. Here are the detailed installation steps:
- Installing Docker
Ensure that Docker and Docker Compose are installed on your system. If they are not, refer to the installation guide on the official Docker website (https://docs.docker.com/get-docker/). - Pull Presenton Mirror
Open a terminal and run the following command to pull the latest image:docker pull ghcr.io/presenton/presenton:latest
- Running containers
Run Presenton with Docker and configure the relevant environment variables. For example, use the OpenAI model:docker run -it --name presenton -p 5000:80 -e LLM="openai" -e OPENAI_API_KEY="your_openai_api_key" -e IMAGE_PROVIDER="dall-e-3" -e CAN_CHANGE_KEYS="false" -v "./app_data:/app_data" ghcr.io/presenton/presenton:latest
-p 5000:80
: Maps the container port to local port 5000, changing 5000 as needed.-e LLM="openai"
: Select an AI model that supportsopenai
,google
,ollama
maybecustom
The-e OPENAI_API_KEY
: Enter your OpenAI API key.-e IMAGE_PROVIDER
: Select the image provider, e.g.dall-e-3
maybepexels
The-e CAN_CHANGE_KEYS="false"
: Enhances security by preventing API keys from being modified.-v "./app_data:/app_data"
: Persistent storage of data.
- Enable GPU acceleration (optional)
If you are using the Ollama model and have an NVIDIA GPU, install the NVIDIA Container Toolkit and run it:docker run -it --name presenton --gpus=all -p 5000:80 -e LLM="ollama" -e OLLAMA_MODEL="llama3.2:3b" -e IMAGE_PROVIDER="pexels" -e PEXELS_API_KEY="your_pexels_api_key" -e CAN_CHANGE_KEYS="false" -v "./app_data:/app_data" ghcr.io/presenton/presenton:latest
- Ensure that the GPU driver and NVIDIA Container Toolkit are properly configured.
OLLAMA_MODEL
Specify the model, e.g.llama3.2:3b
The
- Verification runs
After the container starts, access thehttp://localhost:5000
The web interface of Presenton can be accessed by clicking on the following link: "Presenton".
Using the main functions
Presenton's core feature is AI-driven presentation generation, and here's how it works:
- Creating Presentations
- After logging into the web interface, click "New Presentation".
- Enter a subject or upload a file (e.g. PDF, TXT, PPTX, DOCX).
- Select a theme style (e.g.
classic
,modern
,professional
). - Set up the AI model and image provider and click Generate.
- Customized templates
- In the Template settings, upload an HTML file or customize the layout using Tailwind CSS.
- Supports adjusting fonts, colors and backgrounds, which can be reused after saving.
- Generate slides via API
- Presenton provides an API interface that allows developers to generate presentations via HTTP requests.
- Example request (using
curl
):curl -X POST http://localhost:5000/api/generate \ -H "Content-Type: multipart/form-data" \ -F "theme=modern" \ -F "content=@document.txt" \ -F "api_key=your_api_key"
- assure
Content-Type
set tomultipart/form-data
The - Returns the generated slide file (PPTX format).
- Image generation and insertion
- Select the image provider (e.g. DALL-E 3 or Pexels).
- Enter an image description and the AI will generate or get a matching image from the gallery.
- Drag and drop images to the slide, resize and reposition them.
- Editing and Exporting
- Edit slide content in the web interface, supporting text, images and charts.
- Export to PPTX or PDF format and save locally.
Featured Function Operation
- Running locally protects privacy: Ollama supports running open source models locally without uploading data to the cloud. Setup
LLM=ollama
cap (a poem)OLLAMA_MODEL
After that, all the generation process is done locally. - GPU acceleration: Large models (e.g.
llama3.2:3b
The GPU can be accelerated to generate 2-3 times faster. Make sure you have enough GPU memory. - Multi-Document SupportPresenton: Upload multiple documents (PDF, TXT, etc.) and Presenton automatically extracts key content to generate structured slides.
caveat
- To ensure that the API key is secure, it is recommended to set the
CAN_CHANGE_KEYS=false
The - Check Docker container logs to troubleshoot operational issues:
docker logs presenton
- Regularly update mirrors for the latest features:
docker pull ghcr.io/presenton/presenton:latest
application scenario
- Corporate Report Production
Business users can upload quarterly reports (PDF or DOCX) and Presenton extracts key data to generate professional slides suitable for quick preparation of meeting materials. - Education and training
Teachers can enter course outlines and combine them with the Pexels gallery to generate illustrated teaching slides to enhance the attractiveness of the classroom. - developer integration
Developers integrate Presenton into workflows via APIs to batch generate product presentation slides for startups or technical teams. - Individual Project Showcase
Individual users can use customized templates to generate uniquely styled slides for presenting portfolios or creative projects.
QA
- Does Presenton require an internet connection?
If you are using Ollama's local model, you do not need to be connected to the Internet to generate slides. If you are using OpenAI or Pexels, you need to be connected to the Internet to access API services. - How is data privacy protected?
set upLLM=ollama
And use local model, all data processing is done locally and not uploaded to the cloud. Suggested SettingsCAN_CHANGE_KEYS=false
Prevent key disclosure. - What file formats are supported?
Supports uploading PDF, TXT, PPTX, DOCX files to generate slide content. Export formats include PPTX and PDF. - How to customize slide styles?
Upload HTML templates or edit Tailwind CSS in the web interface with support for adjusting fonts, colors and layout. Providesclassic
,modern
and other built-in themes.