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 that turns your photo and a screenshot of your Instagram profile into a vertical video of you stepping out of a glass profile screen. Nano Banana Edit composes the picture, Veo 3 Fast animates it and WaveSpeedAI swaps your face back in.
Instagram profile animation from a photo and a screenshot is an n8n workflow in the Marketing & SEO category, listed by Mindket. It is free. This is version 2, 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.
Photo and screenshot
It starts when someone sends the form with two images, both jpg, jpeg or png:
A short vertical video of you stepping out of your Instagram profile, ready for Reels
What you need before you start.
Media storage
Takes the photo and the screenshot and returns public addresses the AI steps can read.
NeedsCloud name and an unsigned upload preset
Image and video generation
Composes the picture with Nano Banana Edit and animates it with Veo 3 Fast, and the workflow checks each task until it is done.
NeedsKie.ai API key, in four nodes
Face swap
Puts the face from your photo onto the person in the Veo clip and returns the finished video.
NeedsWaveSpeedAI API key, in two nodes
Checked by Mindket on 13 Nov 2026
This n8n workflow makes a short vertical video from two images: a photo of you and a screenshot of an Instagram profile. A form takes both, and Cloudinary stores them at public addresses. Kie.ai’s Nano Banana Edit then composes a 9:16 picture of the person stepping out of a glowing glass Instagram screen that shows the profile’s details. Veo 3 Fast on Kie.ai animates that picture with a slow push-in and floating hearts and comments. Last, WaveSpeedAI’s video face swap puts the face from your original photo onto the person in the clip, and the final node downloads the video. Each service is polled until it reports a result.
Creators and small brands that want one striking vertical clip of themselves for Reels, Shorts or TikTok, and the social media managers who make it for them. It works with your own face and your own profile, or with someone who has agreed to both.
| Industry | Who uses it | How they use it | Example |
|---|---|---|---|
| Social creators | Instagram creators | Send a portrait and a screenshot of their profile | A creator posts the clip as a Reel to mark a follower milestone. |
| Coaching and consulting | Coaches and solo experts | Open an ad or an intro with a clip of themselves | A coach starts a promo video with the clip, then cuts to the offer. |
| Podcasts and music | Hosts and artists | Announce a new account with a visual of their face | A podcaster introduces the show’s new profile with the clip on launch day. |
| Small brands | Founders who front their brand | Show the brand’s page with its founder in front | A founder opens a launch story with the clip. |
| Agencies | Social media managers | Make a launch clip for a client who has agreed | A manager sends a client the form and gets a draft clip back to review. |
You need some n8n: importing a file, pasting keys into six nodes and swapping a few placeholders. If that is new and you would rather not learn it, skip this one. The page it came from estimates 11 minutes, which assumes the three accounts already exist.
Any n8n you run will do, as long as it can reach Cloudinary, Kie.ai and WaveSpeedAI.
Get 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 |
| Cloudinary | An account with an upload preset whose signing mode is Unsigned |
| Kie.ai | An API key, for the image and the video |
| WaveSpeedAI | An API key, for the face swap |
workflow.json.Upload Photo and Upload Screenshot, put your cloud name in the address where it says <YOUR_CLOUD_NAME>. Swap YOUR_PRESET_NAME for your preset and YOUR_FOLDER_NAME for a folder.nano-banana-edit, nano-banana-result, veo3-video and veo3-video-status, swap <YOUR_KIE_KEY> for your Kie.ai key and keep the word Bearer and its space.video-faceswap-submit and video-faceswap-result with <YOUR_WAVESPEED_KEY>.The page it came from tells you to create credentials and pick them in an Authentication field. The file holds no such setting, so the keys go in the header fields. If you would rather keep them in credentials, create an HTTP Header Auth credential for each service, select it in those nodes and delete their Authorization header.
Open the form from On form submission and attach two images, each a jpg, jpeg or png. Both are required: a clear photo of the person, and a screenshot of the profile to show. The form confirms at once and the run goes on behind it: image, then video, then face swap, each checked every few seconds until it is done. The finished video is downloaded by the last node, final result, and sits in the run’s data. Open the run under Executions to see it.
| To change | Where |
|---|---|
| The picture’s scene | nanoB_prompt in nano-banana setup. It names a white hoodie, black shorts and sneakers |
| The motion | veo3_prompt in veo3 setup. It describes a young man walking toward the viewer |
| Shape of the picture and the clip | image_size in nano-banana-edit and aspectRatio in veo3-video, both 9:16 |
| How often a task is checked | Wait and Wait1 are 30 seconds and Wait2 is 10. The file stores no unit for them, and Mindket wrote seconds into it |
| The face swap | max_duration, target_gender and target_index in video-faceswap-submit, set to 0, all and 0 |
The two images sent through the form:
Upload your photo: portrait.jpg Upload your screenshot: profile-screenshot.png
Nano Banana Edit gets both pictures and its prompt, which asks to keep the face and to copy the screenshot’s username, bio, posts and follower counts into the glass screen. Veo 3 Fast animates the result. WaveSpeedAI then receives this request, which puts your original face on the person in the clip:
{
"face_image": "<your photo’s Cloudinary address>",
"max_duration": 0,
"target_gender": "all",
"target_index": 0,
"video": "<the Veo clip’s address>"
}If you are new. n8n draws a workflow as boxes joined by lines, and each box, a node, does one job. Here three services take a while to finish, so the workflow waits, asks how the job is going and loops until the answer is done. Run the form from its test address first. Open that run under Executions and each node shows what it received and what it sent, which is where a wrong key or a failed task turns up.
For experts. Each of the three services reports its progress in its own words, and a Switch node reads it.
| Job | Model | Status read by the Switch | Wait |
|---|---|---|---|
nano-banana-edit | google/nano-banana-edit, a 9:16 PNG | data.state: fail, generating and success | Wait, 30 seconds |
veo3-video | veo3_fast, 9:16, started from the picture | data.successFlag: 0 generating, 1 success, 2 and 3 failed | Wait1, 30 seconds |
video-faceswap-submit | WaveSpeedAI video-face-swap | data.status: failed, completed and processing | Wait2, 10 seconds |
A failed job ends in a No Operation node, so the run finishes without an error and without a clip. None of the three loops has a retry cap. Set a workflow timeout in n8n’s settings if you want an upper bound.
Each run costs money, and the clip is a face swap, so mind whose face it is.
An n8n workflow. Send its form a photo of a person and a screenshot of an Instagram profile. It returns a short
vertical video of that person stepping out of a glass profile screen.
workflow.json: the workflow as n8n exports it, 25 nodes, four of them sticky notes. It holds no credential. TheREADME.md: these notes.workflow.json.Upload Photo and Upload Screenshot. In each address, put your cloud name where it says<YOUR_CLOUD_NAME>. Then swap YOUR_PRESET_NAME for your preset and YOUR_FOLDER_NAME for a folder.nano-banana-edit, nano-banana-result, veo3-video and veo3-video-status, swap<YOUR_KIE_KEY> for your Kie.ai key. Keep the word Bearer and the space after it.video-faceswap-submit and video-faceswap-result with <YOUR_WAVESPEED_KEY>.The page this came from tells you to create credentials and pick them in an Authentication field. The file holds no
such setting, so the keys go in the header fields. To keep them in credentials instead, create an HTTP Header Auth
credential for each service, select it in those nodes and delete their Authorization header.
Merge hands thenano-banana setup holds the picture prompt, nanoB_prompt. nano-banana-edit sends it with both images to Kie.ai'sgoogle/nano-banana-edit for a vertical PNG. Wait pauses 30 seconds, nano-banana-result asks how it went andSwitch loops back until the state is success. A failure ends the run.veo3 setup holds the motion prompt, veo3_prompt. veo3-video starts Veo 3 Fast (veo3_fast) from the picture.Wait1, veo3-video-status and Switch1 loop the same way, on successFlag.faceswap setup pairs your original photo with the clip. video-faceswap-submit starts WaveSpeedAI's face swap withmax_duration 0, target_gender all and target_index 0. Wait2, video-faceswap-result and Switch2 loop onstatus, and final result downloads the finished video. It sits in the run's data under Executions.nanoB_prompt in nano-banana setup. It names a white hoodie, black shorts and sneakers.veo3_prompt in veo3 setup. It describes a young man walking toward the viewer.image_size in nano-banana-edit and aspectRatio in veo3-video are both 9:16.Wait and Wait1 are 30 seconds, Wait2 is 10 seconds.max_duration, target_gender and target_index in video-faceswap-submit.seconds into each.README.md 4 KB workflow.json 29 KB
Updated by Mindket to the current version of this kit.
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…
nerijs · Kit
A pixel art style add-on for Stable Diffusion XL that turns text prompts into pixel-style images, with an optional LCM LoRA for faster runs. For game makers, d…
LiconStudio · Kit
Keeps characters, clothing, objects and backgrounds consistent in generated video by feeding the model up to five reference images. A LoRA for LTX-2.5 in Comfy…
nhathoangfoto · Kit
A LoRA for FLUX.2 Klein 9B that puts a character into the pose shown by a mannequin reference while keeping the character's face and style. For artists and des…