SuperAPI AI Directory

EditDeck

EditDeck is an end-to-end pipeline tool that goes from requirements text to slide images, standard PPTX, and editable PPTX. It consolidates the fragmented process of making a PPT into one continuous workflow: first generating a structured outline and page content from natural language requirements, then rendering each page as a visual image and packaging it into a standard pptx, and finally reconstructing an editable pptx based on the generated run directory or existing slide images. The project coordinates text models, image models, editable slide generation, and MinerU parsing through a unified YAML configuration, and provides three ways to use it: Web UI, CLI, and HTTP API. It is suitable for users who want to quickly obtain a visual draft first and then continue iterating into an editable presentation.

Open website

About this tool

EditDeck is an open-source project aimed at solving the problem of fragmented steps when making slides: organizing the story, writing page content, generating visuals, and exporting to PPT. If a truly editable presentation is needed, it often has to be rebuilt from scratch. EditDeck turns this process into one continuous workflow.

[Purpose] Starting from purely linguistic requirements, generate a structured PPT outline and page-level content; render each slide page as a visual image and package it into a standard pptx; and reconstruct an editable pptx from the generated run directory or existing slide images. It is suitable for a way of working where you want to "first quickly get a visual draft, then continue until it is editable and usable."

[Main Capabilities]

  1. Single configuration entry point: the project by default only reads config/app.yaml.
  2. Dual workflow support: generate from scratch, or regenerate an editable PPT from existing images.
  3. Complete editable pipeline: image parsing, element extraction, placeholder matching, and browser export are all connected.
  4. More complete cross-platform support: the browser path can be left blank, and at runtime it is automatically detected from explicit parameters, environment variables, and the system PATH.
  5. Easy overriding: CLI parameters and Web/API request parameters can both override the configuration file at runtime.
  6. Provides the same workflow via Web UI, CLI, and HTTP API.

[Usage]

  1. Install dependencies.
  2. Edit the configuration: modify config/app.yaml. The api_key field in the template is left blank by default; you can continue to use the existing base_url address in the file; see config/README.md for a more complete field reference.
  3. Choose how to run:
    • Start the Web server and open it in a browser; the Web entry point is provided by webapp/main.py, suitable for filling in requirements, styles, and run parameters directly on the page.
    • Use the CLI directly. Style input supports two modes: style_description (text) or style_template (reference image), choose one of the two. Reference files can be uploaded via source_files (multiple files), supporting .txt / .md / .pdf / .docx. In replica mode, source slide images can be uploaded via replica_images (multiple files), supporting .png / .jpg / .jpeg / .webp. Common CLI scenario examples:
  • Generate only images and standard PPT;
  • Generate PPT with requirements and supplementary reference documents (supports pdf, docx, txt, md, etc.);
  • Generate with styles and uploaded reference files;
  • After generating a standard PPT, continue to generate an editable PPT;
  • Continue generating an editable PPT from an existing run directory;
  • Generate an editable PPT directly from existing images. Common parameters: --config-file: specify the configuration file, default config/app.yaml --style-description: specify the style via text --style-template: specify the style via an image --source-file: upload reference files (repeatable) --editable-ppt: after image generation, continue to generate an editable PPT -edit / --edit: enable the currently available editable asset matching backend --mineru-api-key: override mineru.api_key as needed --force-reextract-assets: force re-extraction of elements --disable-asset-reuse: prevent a single asset from being reused across multiple placeholders Note: --style-description and --style-template are mutually exclusive; CLI parameters take precedence over YAML configuration.

Main HTTP API endpoints: GET /api/health: health check POST /api/generate: synchronous generation POST /api/generate/start: asynchronous generation POST /api/editable/start: start an editable PPT task from an existing run_id GET /api/generate/status/{job_id}: query asynchronous task status To directly produce an editable PPT during the generation stage, the request must include: generate_editable_ppt=true and asset_backend=edit. Asset extraction for editable PPTs and parsing of image-only (scanned) PDF reference files require MinerU. When no usable mineru.api_key is available in config/app.yaml, mineru_api_key must be explicitly passed in the request.

[Configuration] The project retains one main configuration file. Configuration sections include: app: output directory and default slidepage count models.text: the model used for outline and copy generation models.editable: the editable PPT generation pipeline models.image: the image generation model mineru: page element parsing and asset extraction Fallback rules:

  • When models.image.api_key is empty, fall back to models.text.api_key
  • When models.editable.base_url is empty, fall back to models.text.base_url
  • When models.editable.api_key is empty, fall back to models.text.api_key
  • When mineru.api_key is empty, further fall back to models.editable.api_key, then fall back to models.text.api_key models.editable.browser_path may be left empty; at runtime, explicit parameters, environment variables, and the system PATH are tried in sequence. For a complete example and field reference, see config/README.md.

[Applicable scenarios] Individuals or teams that need to quickly generate slide visual drafts from requirement text and continue to produce editable PPTs; developers who want to coordinate text models, image models, and parsing services through unified configuration; engineering scenarios that need to integrate the same process into a system (via HTTP API). The project team also provides a public-interest site editdeck.top for free trial; when the main domain is unavailable, a backup address can be used http://118.195.198.236/;项目加星后每个用户获得 5 free generations, with an extra 1 free generation for daily check-in; due to server cost limits, occasional unexpected errors may occur, and feedback is welcome.

[Limitations and Known Issues] Asset extraction for editable PPT and image-only PDF parsing depend on MinerU; when no usable mineru.api_key is available, it must be passed explicitly. If browser execution or download fails, you can first leave models.editable.browser_path empty; if you need to explicitly specify a browser, you can pass --editable-browser-path, or set the environment variables EDITABLE_PPT_BROWSER_PATH, CHROME_PATH, GOOGLE_CHROME_BIN, CHROMIUM_PATH, BROWSER_PATH; if the system has no usable browser, run playwright install chromium. If placeholder replacement is abnormal, you can increase mineru.max_refine_depth, enable --force-reextract-assets, or enable --disable-asset-reuse. If you only want to reuse existing assets, you can use --assets-json, but currently it is best suited for directly specifying an existing assets.json in single-image mode. Other specific features, charges, prices, platforms, or effect details are not yet provided in the materials.

[Showcase Cases] The project showcase uses a left-right comparison format (referencing the PPTAgent style): the left side is the image-only result, and the right side is the fully editable reconstructed result. Example requirements include: the English AI Productivity Playbook for Knowledge Teams; a six-page PPT titled "AI Customer Service Knowledge Base Upgrade Plan", 16:9 widescreen dark tech style, with primary colors of deep navy blue, cool cyan-blue, and electric blue, supplemented by highlighted cyan data accent colors, a dark blue-black gradient background, fine grid, faint glowing lines, and glass-textured panels, using the Source Han Sans/PingFang/Microsoft YaHei font system; a six-page PPT titled "Dual-Engine Implementation Roadmap for Enterprise Copilot Deployment", aimed at group management, 16:9 widescreen academic business style, with Microsoft red and blue as the main color palette, paired with light gray and blue-gray background colors, Source Han Sans/PingFang/Microsoft YaHei font system, a top title bar + left vertical timeline + right diagonal zoned dual-engine composition, and cards with unified 18–22px rounded corners and lightweight shadows.