Publish weekly SMB blog posts with Perplexity, Claude, Gemini, Supabase, and Gmail

Quick overview This workflow runs weekly to generate, research, write, illustrate, and publish a new blog post by combining Supabase (content + storage), Perplexity (topic + research), Anthropic Claude (writing), Google Gemini (cover image), and Gmail (notification).

How it works Runs every Friday at 10:00 (cron: 0 0 10 * * 5). Fetches titles of already published posts from Supabase and builds a rotating topic focus that avoids repeating prior angles. Uses Perplexity to propose one fresh, SEO-relevant blog topic and then research it with trends, examples, and SMB-focused insights. Sends the topic and research notes to Anthropic Claude to write a complete post with title, excerpt, meta description, category, read time, and HTML body. Parses the generated text into structured fields, generates a slug, and prepares a published blog post record. Uses Google Gemini to generate a 16:9 cover image, uploads it to Supabase Storage, and attaches the public cover image URL to the post. Inserts the finished post into the Supabase blog_posts table with status set to published and emails the team via Gmail with the publication details.

Setup Create a Supabase project with a blog_posts table and a Storage bucket/path for covers (social-images/blog-covers), then replace YOUR-PROJECT.supabase.co in both Supabase HTTP requests. Add credentials for Supabase, Perplexity, Anthropic (Claude), Google Gemini (Google PaLM/Gemini), and Gmail OAuth2. Update the notification recipients (To/CC) in the Gmail message node. (Optional) Replace YOUR-COST-LOG-SUBWORKFLOW-ID with your cost-logging workflow ID or delete the cost-logging sub-workflow calls. Adjust the schedule cron expression if you want a different publish cadence.

Requirements Supabase project: a blog_posts table plus a public Storage bucket for cover images Perplexity API key (topic + research) Anthropic Claude API key (writing) Google Gemini key (cover image) Gmail OAuth, or any email node, for the notification

Customization Rewrite the Claude prompt to match your brand voice, tone, and post length Change the schedule cron to publish daily, weekly, or on demand Swap Gmail for Slack, Telegram, or Outlook to get notified your way Publish to your own CMS or WordPress instead of Supabase by editing the publish node Tweak the Gemini cover prompt and aspect ratio for your brand look Add a human approval step before publishing if you want a person in the loop

Additional info The topic picker reads your already-published titles before choosing the next one, so your blog keeps a varied, non-repetitive editorial calendar on autopilot. The cost-logging nodes are optional and safe to delete.

0
Downloads
1
Views
8.72
Quality Score
beginner
Complexity
Author:Pedro Olavarria(View Original →)
Created:7/2/2026
Updated:7/2/2026

🔒 Please log in to import templates to n8n and favorite templates

Workflow Visualization

Loading...

Preparing workflow renderer

Comments (0)

Login to post comments