Presenton
Open source AI presentation generator, self-hosted alternative to Gamma
Alternative to: gamma, canva, beautiful.ai, decktopus
Presenton generates fully editable presentations from prompts, documents, or your own PowerPoint templates using AI, with drag-and-drop editing and export to PPTX or PDF. It can run entirely on your own infrastructure with local models through Ollama, or connect to OpenAI, Gemini, Claude, or Azure OpenAI, giving you a self-hosted alternative to cloud AI presentation tools.
Presenton Docker Compose example
Self-host Presenton on your own server, homelab, or VPS starting from this Docker Compose example.
It runs Presenton in Docker containers using the official ghcr.io/presenton/presenton:latest image, with persistent volumes and automatic restarts preconfigured.
Review the environment variables and adjust them to your setup, save the file as compose.yml (or docker-compose.yml), and start the stack with docker compose up -d.
services:
presenton:
image: ghcr.io/presenton/presenton:latest
restart: unless-stopped
environment:
# Path to the Chromium binary used to render/export slides.
PUPPETEER_EXECUTABLE_PATH: "/usr/bin/chromium"
# Run database migrations automatically on startup.
MIGRATE_DATABASE_ON_STARTUP: "true"
# Allow API keys and model selection to be changed from the web UI.
CAN_CHANGE_KEYS: "true"
# Public URL where Presenton is reachable (set to your domain behind the reverse proxy).
PRESENTON_PUBLIC_URL: ""
# LLM provider: openai, google, anthropic, ollama, custom, etc. Leave empty to pick it in the UI.
LLM: ""
# API key for the selected LLM provider (e.g. OpenAI). Leave empty to set it in the UI.
OPENAI_API_KEY: ""
# Model for the selected provider (e.g. gpt-4o). Leave empty to set it in the UI.
OPENAI_MODEL: ""
# Image source: pexels, pixabay, dall-e-3, gemini_flash. Leave empty to pick it in the UI.
IMAGE_PROVIDER: ""
# API key for the image provider (e.g. Pexels). Leave empty to set it in the UI.
PEXELS_API_KEY: ""
volumes:
- app_data:/app_data
volumes:
app_data: Prefer a managed setup? WinterFlow installs, configures, and updates Presenton for you using this same Docker Compose configuration.