Automated blog generation with Gemini AI, GitHub & Jekyll publishing
UnknownUnknown. This template uses community nodes we can't verify statically. Uses community nodes that can't be verified statically (unverified community packages are off by default in 3.0). Static check, last run 2026-10-19.
Community nodes
These come from third-party npm packages. In n8n 3.0 unverified community packages are off by default (N8N_UNVERIFIED_PACKAGES_ENABLED=false).
@tavily/n8n-nodes-tavily(Tavily Web Search)
Nodes used (9)
- AI Agent
@n8n/n8n-nodes-langchain.agent - Wikipedia
@n8n/n8n-nodes-langchain.toolWikipedia - Edit Fields (Set)
n8n-nodes-base.set - Google Gemini Chat Model
@n8n/n8n-nodes-langchain.lmChatGoogleGemini - Code
n8n-nodes-base.code - GitHub
n8n-nodes-base.github - Tavily
@tavily/n8n-nodes-tavily.tavily - Schedule Trigger
n8n-nodes-base.scheduleTrigger - Google Sheets
n8n-nodes-base.googleSheets
What it does
π Use Case This n8n workflow automates the creation and publication of technical blog posts based on a list of topics stored in Google Sheets. It fetches context using Tavily and Wikipedia, generates Markdown-formatted content with Gemini AI, commits it to a GitHub repository, and updates a Jekyll-powered blog β all without manual intervention. Ideal for developers, bloggers, or content teams who want to streamline technical content creation and publishing. --- βοΈ Setup Instructions π Prerequisites - n8n (cloud or self-hosted) - Tavily API key - Google Sheets with blog topics - Gemini (Google Palm) API key - GitHub repository (Jekyll enabled) - GitHub OAuth2 credentials - Google OAuth2 credentials π§© Setup Steps 1. Import the workflow JSON into your n8n instance. 2. Set up the following credentials in n8n: - Tavily API - Google Sheets OAuth2 - Google Palm/Gemini AI - GitHub OAuth2 3. Prepare your Google Sheet: - Columns: Title, status, rownumber - Set status to blank for topics to be picked up. 4. Configure: - GitHub repo and posts/ path - Jekyll setup (front matter, config.yml, GitHub Pages) 5. Adjust prompt/custom parameters if needed. 6. Enable and deploy the workflow. Schedule it daily or trigger manually. --- π Workflow Details | Node | Function | |------|----------| | Schedule Trigger | Triggers the flow at a set interval | | Google Sheets (Get Topic) | Fetches the next incomplete blog topic | | Extract Topic | Parses topic text from the sheet | | Tavily Search | Gathers up-to-date content related to the topic | | Wikipedia Tool | Optionally adds more context or images | | Summarize Results | Formats the context for the AI | | Gemini AI Agent (LangChain) | Generates a Markdown blog post with YAML front matter | | Set File Parameters | Prepares the filename, content, and commit message | | GitHub Commit | Uploads the .md file to the posts/ directory | | Update Google Sheet | Marks topic as done after successful commit | --- π οΈ Customization Options - Change LLM prompt (e.g. tone, depth, format). - Use OpenAI instead of Gemini by switching nodes. - Modify filename pattern or GitHub repo path. - Add Slack/Discord notifications after publish. - Extend flow to upload images or embed YouTube links. --- β οΈ Community Nodes Used This workflow uses the following community nodes: - @tavily/n8n-nodes-tavily.tavily β for deep search > β οΈ Ensure these are installed and enabled in your n8n instance. --- π‘ Pro Tips - Use GitHub Actions to trigger an automatic Jekyll build post-commit. - Structure blog posts with front matter, headings, and table of contents for SEO. - Set Schedule Trigger to daily at a fixed time to keep content flowing. - Enhance formatting in AI output using code blocks, images, and lists. --- β
Example Output markdown --- title: "How LLMs Are Changing Web Development" date: "2025-07-25" categories: webdev, AI tags: LLM, Gemini, n8n, automation excerpt: "Learn how LLMs like Gemini are transforming how we generate and deploy developer content." author: "Saswat Saubhagya" --- Table of Contents - Introduction(introduction) - Understanding LLMs(understanding-llms) - Use Cases in Web Development(use-cases-in-web-development) - Challenges(challenges) - Conclusion(conclusion) ...