Huashu Design
alchaincyf · Skill
Turns a one-line request in your AI agent into a finished design: a launch animation, a clickable app prototype, an editable slide deck, an infographic or a se…
An n8n workflow with a form: describe a topic or upload a PDF, and pick up to ten slides. OpenAI plans each slide, WaveSpeedAI draws it, and every picture becomes a slide in a new Google Slides deck.
Google Slides deck of AI images from a topic or a PDF is an n8n workflow in the Productivity category, listed by Mindket. It is free. This is version 1, last updated on . Download it on this page or copy its JSON, then import it into an n8n canvas. Nothing runs until you activate it in n8n.
Form
It starts when someone submits the form and picks a topic or a file. The second page asks for:
A Google Slides deck in your account with one generated picture for each slide, and its link in the run’s output
What you need before you start.
Presentations
Creates the deck, removes its blank first slide, adds a slide for each picture and sets the picture as its background.
NeedsA Google account to sign in with
Language model
Runs gpt-5.2 to plan the slides, with web search for a topic and the PDF sent as a file for a document.
NeedsOpenAI API key
Image generation
Draws each slide with its FLUX.2 flex text-to-image model and returns the picture’s address.
NeedsWaveSpeedAI API key, typed into two headers
Checked by Mindket on 13 Nov 2026
This n8n workflow turns a topic or a PDF into a Google Slides deck. Every slide is one generated picture. A form asks how you want to start, then for a description or a PDF and a number of slides, up to ten. OpenAI’s gpt-5.2 plans the deck: a shared style, a list of things to avoid and a prompt for each slide with its title and text. WaveSpeedAI then draws the slides one by one at 1536 by 864, and the workflow sets each finished picture as the background of a new slide in the deck. Twenty-two nodes run it.
People who need a short visual deck quickly, for a pitch, a lesson or a report summary, and are happy to present pictures rather than text boxes. It fits a team that already works in Google Slides. Skip it if you must edit the wording later or keep to your brand’s fonts and logo. Neither is possible here.
| Industry | Who uses it | How they use it | Example |
|---|---|---|---|
| Consulting | Analysts | Upload a finished report as a PDF and ask for a few slides | An analyst turns a long market report into six slides for a client call. |
| Education | Teachers | Describe the lesson and the class in one line | A teacher asks for five slides on the water cycle for ten-year-olds and shows them in class. |
| Marketing agencies | Account managers | Sketch a pitch from a short brief before the first meeting | A manager describes a café’s spring campaign and brings a mood deck to the meeting. |
| Startups | Founders | Upload a product brief and ask for a short teaser | A founder turns a two-page brief into eight slides for an investor email. |
You need some n8n and three accounts: OpenAI, WaveSpeedAI and Google. Setup is an import, two credentials and a key pasted into two headers. Its author puts it at about 12 minutes.
Any n8n that can reach OpenAI, WaveSpeedAI and the Google Slides API will run it, and each deck lands in the Google Drive of the account behind the credential.
Presentation URL to send the deck’s linkGet it saves a zip with workflow.json and Mindket’s setup notes in your downloads folder. Have these ready before you import it.
| Need | Detail |
|---|---|
| n8n | On n8n Cloud or on a server of your own |
| OpenAI | An API key that can use gpt-5.2 and the web search tool of the Responses API |
| WaveSpeedAI | An account with credit, and its API key |
| An account for a Google Slides OAuth2 credential. It owns every deck the workflow makes |
workflow.json.Create New Blank PPT, Delete First Slide, Create New Blank PPT1, Delete First Slide1, Add Blank Slides and Update Image to PPT.Message a model and Message a model1.Create Task and Check Status, replace <YOUR_WAVESPEED_KEY> in the Authorization header with your key. The brackets go too, so the header reads Bearer, a space and the key.Open the form and choose Create with AI or Create with files. For a topic, describe the deck in a sentence or two, name the audience if it matters, and pick the number of slides. For a file, upload the PDF. Each slide takes at least 30 seconds, since the workflow waits that long before every check. A ten-slide deck needs five minutes or more. When the run ends, copy the link from Presentation URL under Executions, or find the deck in Drive by its title.
| To change | Where |
|---|---|
| The look of every deck | The system messages of Message a model and Message a model1, sample answer included |
| What the slides say | Your description or your PDF. The model writes each title and text from it |
| Picture size and model | size in Create Task, and the model named in its address |
| The form | On form submission, With AI and With file. Other nodes read the answers by label, so rename a label there too |
| How often it checks | Wait, 30 seconds between checks |
You choose Create with AI, describe a beginner’s guide to home composting for a community garden and pick 5 slides.
gpt-5.2 answers in the shape its schema sets, shown here with the text cut:
{
"output": {
"BaseStyle_prompt": "…",
"Negative_prompt": "…",
"Slides": [
{ "slide": "Slide 1", "prompt": "…" },
{ "slide": "Slide 2", "prompt": "…" }
]
}
}Five pictures follow, one at a time. Each becomes a slide in a deck named after your description, with the word Presentation at the end. The address in Presentation URL opens it.
If you are new. n8n draws a workflow as boxes joined by lines, and each box, a node, does one job. This one starts with two paths, one for a topic and one for a PDF, which meet at Prepare prompts. A loop then handles one slide at a time. Try two slides first. Then open each node under Executions to see what it received and sent.
For experts. Every Google call is a plain HTTP Request with the Google Slides credential, so any other Slides API request can be added the same way.
| Node | Call | What to know |
|---|---|---|
Message a model | OpenAI Responses API, gpt-5.2 | Web search on, medium context, and a JSON schema that holds the reply to three fields |
Message a model1 | The same, with the PDF as a file | No web search. The plan comes from the document alone |
Create Task | WaveSpeedAI, FLUX.2 flex text-to-image | Asynchronous, with a random seed for every picture |
Add Blank Slides | Slides batchUpdate, createSlide | Inserts at the slide’s number less one, on the BLANK layout |
Update Image to PPT | Slides batchUpdate, updatePageProperties | Sets the picture as a stretched background fill |
Edit Fields1 reads whichever create node ran, through $if and isExecuted, so both paths share one loop.
The slides are pictures, so check them before anyone else sees the deck.
Presentation URLSwitch1 has nothing on its failed output, so the run stops with part of the deck made. A status it does not test ends the run with an errorgpt-5.2 as its previous flagship. Its deprecations page, read on 3 November 2026, gives it no shutdown dateAn n8n workflow with a two-page form. You describe a topic or upload a PDF and choose up to ten slides. OpenAI's gpt-5.2
plans a picture for each slide, WaveSpeedAI draws it, and the workflow makes it the background of a slide in a new Google
Slides deck in your account.
workflow.json: the workflow as n8n exports it, 22 nodes and no sticky notes. It holds no credential, and the twoREADME.md: these notes.Create Task and Check Status read Bearer <token>. It is now Bearer <YOUR_WAVESPEED_KEY>.$json['Describe what you\'d like to make'] in Create New Blank PPT and in the user message of Message a model./\D+/g in Edit Fields1, which keeps the digits of "Slide 3". As /D+/g, it only took out capital letters D, and/\.[^/.]+$/ in Create New Blank PPT1 and Message a model1, which cuts the extension off the PDF's name.\n line breaks in the sample answer and in the rule that asks for them,gpt-5.2 and the web search tool of the Responses API.workflow.json.Create New Blank PPT, Delete First Slide, Create New Blank PPT1, Delete First Slide1,Add Blank Slides and Update Image to PPT.Message a model and Message a model1.Create Task and Check Status, replace <YOUR_WAVESPEED_KEY> in the Authorization header with your key. The| Page | What it asks |
|---|---|
| On form submission | How to start: Create with AI or Create with files |
| With AI | A description of the deck, and the number of slides from 1 to 10. Both are required |
| With file | A PDF, which is required, and the number of slides, which this page leaves optional |
If sends the first answer to With AI or With file, the form's second page.Create New Blank PPT or Create New Blank PPT1 makes an empty deck. Its title is your description, or the PDF's.pdf, with the word Presentation after it. Delete First Slide or Delete First Slide1 removes theMessage a model (a topic) or Message a model1 (a PDF) asks gpt-5.2 for a plan in a fixed JSON shape. It holdsPrepare prompts tidies the answer, Split Out makes one item per slide, and Loop Over Items takes them one at aEdit Fields joins the style prompt, the slide's own prompt and the list of things to avoid. Create Task sends thatWait pauses 30 seconds and Check Status asks for the picture. Switch1 goes back to Wait while the task isprocessing, goes on once it is completed, and stops when it has failed.Edit Fields1 takes the picture's address, the slide's number and the deck's ID. Add Blank Slides inserts a blankUpdate Image to PPT sets the picture as its background.Presentation URL builds the deck's address from https://docs.google.com/presentation/d/ andMessage a model and Message a model1. Each ends with a sample answersize in Create Task is 1536*864, a 16:9 shape for a widescreen slide. The model is partOn form submission, With AI and With file. Other nodes read the answers byIf, the two create calls and both model calls), so rename a label in those expressions too.Wait, 30 seconds.Presentation URL underPresentation URL toSwitch1 has nothing on its failed output, so the run stops there. The deck keeps the slides made soPresentation URL never runs. A status the switch does not test ends the run with an error.gpt-5.2 as its previous flagship. Its deprecations page, read on 3 November 2026, gives it no shutdownREADME.md 7 KB workflow.json 43 KB
alchaincyf · Skill
Turns a one-line request in your AI agent into a finished design: a launch animation, a clickable app prototype, an editable slide deck, an infographic or a se…
op7418 · Skill
Skill that makes single-file HTML slide decks, slide illustrations and platform covers in two visual styles, with a presenter mode for rehearsal. For speakers…
alirezarezvani · Skill
Adds 411 ready-made skills for Claude Code and other coding agents, grouped by role from engineering and product to marketing, finance and compliance. Installs…
zarazhangrui · Skill
Builds HTML presentations from scratch or from a PowerPoint file and shows visual style previews to pick from, for people who want web slides with no CSS or Ja…
iptv-org · Kit
Collects publicly available live TV channels from many countries into playlists that any video player with live streaming can open. Made for viewers and for de…
uwg · Kit
Holds a set of image upscaling models gathered from the OpenModelDB community, for people who want to enlarge low-resolution pictures with AI on their own comp…