Skip to main content

End-to-end Ai blog research and writer with Gemini AI, Supabase and Nano-Banana

Workflow preview

Workflow preview
100%
End-to-end Ai blog research and writer with Gemini AI, Supabase and Nano-Banana preview
Open on n8n.io

Important notice

This workflow is provided as-is. Please review and test before using in production.

1. Workflow Overview

Blog Research and Writer n8n Workflow Ai Blog Writer Fully automated blog creation system using n8n + AI Agents + Image Generation [Example Blog](https://livesume.com/blog/building personal brand s...

Best for

  • Content Creation automation workflows
  • Multimodal AI automation workflows
  • advanced n8n builders looking for reusable templates

Tools used

n8n-nodes-base.scheduletrigger, @n8n/n8n-nodes-langchain.agent, @n8n/n8n-nodes-langchain.outputparserstructured, @n8n/n8n-nodes-langchain.lmchatgroq, @n8n/n8n-nodes-langchain.lmchatgooglegemini, n8n-nodes-base.rssfeedreadtool, n8n-nodes-base.supabase, n8n-nodes-base.if

Source and attribution

This workflow is cataloged by N8N Workflows and links back to its original n8n.io source page by Muhammad Asadullah.

Original n8n.io source

1.1 Workflow description

Title
End-to-end Ai blog research and writer with Gemini AI, Supabase and Nano-Banana
Workflow name
End-to-end Ai blog research and writer with Gemini AI, Supabase and Nano-Banana

Blog Research and Writer n8n Workflow - Ai Blog Writer

Fully automated blog creation system using n8n + AI Agents + Image Generation

Example Blog

Overview

This workflow automates the entire blog creation pipeline—from topic research to final publication. Three specialized AI agents collaborate to produce publication-ready blog posts with custom images, all saved directly to your Supabase database.

How It Works

1. Research Agent (Topic Discovery)

  • Triggers: Runs on schedule (default: daily at 4 AM)
  • Process:
    • Fetches existing blog titles from Supabase to avoid duplicates
    • Uses Google Search + RSS feeds to identify trending topics in your niche
    • Scrapes competitor content to find content gaps
    • Generates detailed topic briefs with SEO keywords, search intent, and differentiation angles
  • Output: Comprehensive research document with SERP analysis and content strategy

2. Writer Agent (Content Creation)

  • Triggers: Receives research from Agent 1
  • Process:
    • Writes full blog article based on research brief
    • Follows strict SEO and readability guidelines (no AI fluff, natural tone, actionable content)
    • Structures content with proper HTML markup
    • Includes key sections: hook, takeaways, frameworks, FAQs, CTAs
    • Places image placeholders with mock URLs (https://db.com/image_1, etc.)
  • Output: Complete JSON object with title, slug, excerpt, tags, category, and full HTML content

3. Image Prompt Writer (Visual Generation)

  • Triggers: Receives blog content from Agent 2
  • Process:
    • Analyzes blog content to determine number and type of images needed
    • Generates detailed 150-word prompts for each image (feature image + content images)
    • Creates prompts optimized for Nano-Banana image model
    • Names each image descriptively for SEO
  • Output: Structured prompts for 3-6 images per blog post

4. Image Generation Pipeline

  • Process:
    • Loops through each image prompt
    • Generates images via Nano-Banana API (Wavespeed.ai)
    • Downloads and converts images to PNG
    • Uploads to Supabase storage bucket
    • Generates permanent signed URLs
    • Replaces mock URLs in HTML with real image URLs
  • Output: Blog HTML with all images embedded

5. Publication

  • Final blog post saved to Supabase blogs table as draft
  • Ready for immediate publishing or review

Key Features

Duplicate Prevention: Checks existing blogs before researching new topics
SEO Optimized: Natural language, proper heading structure, keyword integration
Human-Like Writing: No robotic phrases, varied sentence structure, actionable advice
Custom Images: Generated specifically for each blog's content
Fully Structured: JSON output with all metadata (tags, category, excerpt, etc.)
Error Handling: Automatic retries with wait periods between agent calls
Tool Integration: Google Search, URL scraping, RSS feeds for research

Setup Requirements

1. API Keys Needed

  • Google Gemini API: For Gemini 2.5 Pro/Flash models (content generation/writing)
  • Groq API (optional): For Kimi-K2-Instruct model (research/writing)
  • Serper.dev API: For Google Search (2,500 free searches/month)
  • Wavespeed.ai API: For Nano-Banana image generation
  • Supabase Account: For database and image storage

2. Supabase Setup

  • Create blogs table with fields:
    • title, slug, excerpt, category, tags, featured_image, status, featured, content
  • Create storage bucket for blog images
  • Configure bucket as public or use signed URLs

3. Workflow Configuration

Update these placeholders:

  • RSS Feed URLs: Replace [your website's rss.xml] with your site's RSS feed
  • Storage URLs: Update Supabase storage paths in "Upload object" and "Generate presigned URL" nodes
  • API Keys: Add your credentials to all HTTP Request nodes
  • Niche/Brand: Customize Research Agent system prompt with your industry keywords
  • Writing Style: Adjust Writer Agent prompt for your brand voice

Customization Options

Change Image Provider

Replace the "nano banana" node with:

  • Gemini Imagen 3/4
  • DALL-E 3
  • Midjourney API
  • Any Wavespeed.ai model

Adjust Schedule

Modify "Schedule Trigger" to run:

  • Multiple times daily
  • Specific days of week
  • On-demand via webhook

Alternative Research Tools

Replace Serper.dev with:

  • Perplexity API (included as alternative node)
  • Custom web scraping
  • Different search providers

Output Format

{
  "title": "Your SEO-Optimized Title",
  "slug": "your-seo-optimized-title",
  "excerpt": "Compelling 2-3 sentence summary with key benefits.",
  "category": "Your Category",
  "tags": ["tag1", "tag2", "tag3", "tag4"],
  "author_name": "Your Team Name",
  "featured": false,
  "status": "draft",
  "content": "<article>...complete HTML with embedded images...</article>"
}

Performance Notes

  • Average runtime: 15-25 minutes per blog post
  • Cost per post: ~$0.10-0.30 (depending on API usage)
  • Image generation: 10-15 seconds per image with Nano-Banana
  • Retry logic: Automatically handles API timeouts with 5-15 minute wait periods

Best Practices

  1. Review Before Publishing: Workflow saves as "draft" status for human review
  2. Monitor API Limits: Track Serper.dev searches and image generation quotas
  3. Test Custom Prompts: Adjust Research/Writer prompts to match your brand
  4. Image Quality: Review generated images; regenerate if needed
  5. SEO Validation: Check slugs and meta descriptions before going live

Workflow Architecture

3 Main Phases:

  1. Research → Writer → Image Prompts (Sequential AI Agent chain)
  2. Image Generation → Upload → URL Replacement (Loop-based processing)
  3. Final Assembly → Database Insert (Single save operation)

Error Handling:

  • Wait nodes between agents prevent rate limiting
  • Retry logic on agent failures (max 2 retries)
  • Conditional checks ensure content quality before proceeding

Result: Hands-free blog publishing that maintains quality while saving 3-5 hours per post.

1.2 Logical Blocks

This catalog entry is organized from the workflow JSON. The node-level section below shows the executable blocks available for review before importing the template.

2. Block-by-Block Analysis

Block 1 - Schedule Trigger

Type / Role
n8n-nodes-base.scheduleTrigger - scheduleTrigger
Config choices
Version 1.2

Block 2 - AI Agent

Type / Role
@n8n/n8n-nodes-langchain.agent - agent
Config choices
Version 2.2

Block 3 - Structured Output Parser

Type / Role
@n8n/n8n-nodes-langchain.outputParserStructured - outputParserStructured
Config choices
Version 1.3

Block 4 - Groq Chat Model

Type / Role
@n8n/n8n-nodes-langchain.lmChatGroq - lmChatGroq
Config choices
Version 1

Block 5 - Google Gemini Chat Model

Type / Role
@n8n/n8n-nodes-langchain.lmChatGoogleGemini - lmChatGoogleGemini
Config choices
Version 1

Block 6 - RSS Read

Type / Role
n8n-nodes-base.rssFeedReadTool - rssFeedReadTool
Config choices
Version 1.2

Block 7 - Create a row

Type / Role
n8n-nodes-base.supabase - supabase
Config choices
Version 1

Block 8 - AI Agent1

Type / Role
@n8n/n8n-nodes-langchain.agent - agent
Config choices
Version 2.2

Block 9 - Groq Chat Model1

Type / Role
@n8n/n8n-nodes-langchain.lmChatGroq - lmChatGroq
Config choices
Version 1

Block 10 - RSS Read1

Type / Role
n8n-nodes-base.rssFeedReadTool - rssFeedReadTool
Config choices
Version 1.2

Block 11 - Google Gemini Chat Model1

Type / Role
@n8n/n8n-nodes-langchain.lmChatGoogleGemini - lmChatGoogleGemini
Config choices
Version 1

Block 12 - If

Type / Role
n8n-nodes-base.if - if
Config choices
Version 2.2

Block 13 - Wait

Type / Role
n8n-nodes-base.wait - wait
Config choices
Version 1.1

Block 14 - Google Gemini Chat Model2

Type / Role
@n8n/n8n-nodes-langchain.lmChatGoogleGemini - lmChatGoogleGemini
Config choices
Version 1

Block 15 - Information Extractor

Type / Role
@n8n/n8n-nodes-langchain.informationExtractor - informationExtractor
Config choices
Version 1.2

Block 16 - Google Gemini Chat Model4

Type / Role
@n8n/n8n-nodes-langchain.lmChatGoogleGemini - lmChatGoogleGemini
Config choices
Version 1

Block 17 - Loop Over Items

Type / Role
n8n-nodes-base.splitInBatches - splitInBatches
Config choices
Version 3

Block 18 - Wait1

Type / Role
n8n-nodes-base.wait - wait
Config choices
Version 1.1

Block 19 - Code

Type / Role
n8n-nodes-base.code - code
Config choices
Version 2

Block 20 - Generate an image

Type / Role
@n8n/n8n-nodes-langchain.googleGemini - googleGemini
Config choices
Version 1

Block 21 - Upload object

Type / Role
n8n-nodes-base.httpRequest - httpRequest
Config choices
Version 4.1

Block 22 - Generate presigned URL

Type / Role
n8n-nodes-base.httpRequest - httpRequest
Config choices
Version 4.1

Block 23 - all_images

Type / Role
n8n-nodes-base.code - code
Config choices
Version 2

Block 24 - html_content

Type / Role
n8n-nodes-base.set - set
Config choices
Version 3.4

Showing the first 24 of 51 workflow blocks. Download the JSON for the full node graph.

3. Summary Table

Workflow End-to-end Ai blog research and writer with Gemini AI, Supabase and Nano-Banana
Complexity advanced
Nodes 51
Categories Content Creation, Multimodal AI
Author Muhammad Asadullah
Published 29 Sept 2025

4. Reproducing the Workflow from Scratch

  1. 1. Download the workflow JSON

    Use the JSON export at /data/workflows/9079/9079.json as the source template for this automation.

  2. 2. Import the template into n8n

    Open n8n, import the downloaded JSON, and review each node before activating the workflow.

  3. 3. Configure credentials and variables

    Replace placeholder credentials, API keys, webhook URLs, account IDs, and environment-specific values with your own settings.

  4. 4. Test with sample data

    Run the workflow manually or in a staging workspace, inspect node output, and confirm downstream systems receive the expected data.

  5. 5. Activate and monitor

    Enable the workflow only after testing, then monitor executions, errors, and rate limits during the first production runs.

5. General Notes & Resources

Review imported nodes carefully before activation. This catalog entry is intended to help you inspect the workflow structure, understand required services, and find related templates faster.

Node names, credentials, schedules, webhook paths, and external service limits may need adjustment for your workspace.

Frequently asked questions

What does End-to-end Ai blog research and writer with Gemini AI, Supabase and Nano-Banana do?

Blog Research and Writer n8n Workflow Ai Blog Writer Fully automated blog creation system using n8n + AI Agents + Image Generation [Example Blog](https://livesume.com/blog/building personal brand s...

What do I need before importing this workflow?

Review the workflow JSON, configure any required credentials in n8n, and test the automation in a safe workspace before using it in production.

Can I customize this workflow?

Yes. Use the block-by-block analysis and the downloadable JSON to inspect each node, then adjust credentials, prompts, schedules, filters, or destinations for your Content Creation, Multimodal AI use case.