Skip to main content

Turn GitHub releases into audio updates and newsletters with OpenAI and ElevenLabs

Workflow preview

Workflow preview
100%
Turn GitHub releases into audio updates and newsletters with OpenAI and ElevenLabs preview
Open on n8n.io

1. Workflow Overview

Deliver your product updates in a modern, accessible format. This workflow automatically transforms GitHub releases into podcast style audio announcements and distributes them via email and Slack. ...

Best for

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

Tools used

n8n-nodes-base.stickynote, n8n-nodes-base.githubtrigger, n8n-nodes-base.code, n8n-nodes-base.notion, @n8n/n8n-nodes-langchain.openai, n8n-nodes-base.httprequest, n8n-nodes-base.googlesheets, n8n-nodes-base.aggregate

Source and attribution

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

Original n8n.io source

1.1 Workflow description

Title
Turn GitHub releases into audio updates and newsletters with OpenAI and ElevenLabs
Workflow name
Turn GitHub releases into audio updates and newsletters with OpenAI and ElevenLabs

Deliver your product updates in a modern, accessible format. This workflow automatically transforms GitHub releases into podcast-style audio announcements and distributes them via email and Slack.


🎯 What This Workflow Does

This template bridges your development cycle with your marketing and communication channels.


πŸ™ Step 1 β€” GitHub Trigger & Notion Synthesis

  • GitHub Trigger: Fires when a new release is published
  • Parsing: Converts raw markdown into structured categories (features, fixes, improvements)
  • Notion Merge: Enriches data with additional context from your Notion changelog database

πŸŽ™οΈ Step 2 β€” AI Scriptwriting & Professional TTS

  • Script Generation: OpenAI converts technical notes into a conversational 60–90 sec script
  • Voice Generation: ElevenLabs turns the script into high-quality audio
  • CDN Hosting: Uploads MP3 via UploadToURL to generate a public URL

πŸ“§ Step 3 β€” Multimedia Newsletter Delivery

  • Subscriber Fetch: Loads email list from Google Sheets
  • Email Creation: Builds a rich HTML email with embedded audio player
  • Distribution: Sends via Gmail using BCC list

πŸ’¬ Step 4 β€” Internal Sync & Database Update

  • Slack Alert: Posts update with audio preview to team channel
  • Notion Update: Marks entry as published and stores audio URL

✨ Key Features

  • Bidirectional Notion Sync: Reads and updates changelog entries
  • Conversational AI: Converts technical updates into human-friendly audio
  • Dynamic HTML Emails: Includes inline audio playback
  • High-Quality Voice: Uses ElevenLabs for realistic narration

πŸ”§ Setup Requirements

Required Integrations

  • GitHub: Personal Access Token (repo read scope)
  • Notion: Integration token + changelog database
  • ElevenLabs: API key + Voice ID
  • OpenAI: API key
  • UploadToURL: For MP3 hosting
  • Slack: Bot token

Environment Variables

  • NOTION_DATABASE_ID
  • APPROVER_EMAIL
  • DISCORD_WEBHOOK_URL
  • SLACK_CHANNEL_ID

Humanize your software updates. Import this template and start broadcasting your product journey with audio.

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 - πŸ“‹ MAIN β€” Workflow Overview

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

Block 2 - πŸ“ Note β€” GitHub Trigger, Parse & Notion Fetch

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

Block 3 - πŸ“ Note β€” Script, TTS & UploadToURL

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

Block 4 - πŸ“ Note β€” Subscribers, HTML Build & Gmail Send

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

Block 5 - πŸ“ Note β€” Slack Post & Notion Write-Back

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

Block 6 - GitHub β€” On New Release Published

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

Block 7 - Code β€” Parse & Categorise Release Notes

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

Block 8 - Notion β€” Query Changelog Database

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

Block 9 - Code β€” Merge Notion Context + Release Data

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

Block 10 - OpenAI β€” Write Podcast-Style Spoken Script

Type / Role
@n8n/n8n-nodes-langchain.openAi - openAi
Config choices
Version 1.4

Block 11 - ElevenLabs β€” Generate MP3 Audio

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

Block 12 - Code β€” Store Script Text Before Upload

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

Block 13 - Code β€” Store Audio URL + Full Release Data

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

Block 14 - Google Sheets β€” Load Subscriber List

Type / Role
n8n-nodes-base.googleSheets - googleSheets
Config choices
Version 4.5

Block 15 - Aggregate β€” Bundle All Subscriber Emails

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

Block 16 - Code β€” Build HTML Email Newsletter

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

Block 17 - Gmail β€” Send Audio Newsletter to Subscribers

Type / Role
n8n-nodes-base.gmail - gmail
Config choices
Version 2.1

Block 18 - Slack β€” Post to #product-updates Channel

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

Block 19 - Notion β€” Write Back Audio URL to Changelog Page

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

Block 20 - Upload a File

Type / Role
n8n-nodes-uploadtourl.uploadToUrl - uploadToUrl
Config choices
Version 1

3. Summary Table

Workflow Turn GitHub releases into audio updates and newsletters with OpenAI and ElevenLabs
Complexity advanced
Nodes 20
Categories Content Creation, Multimodal AI
Author Jitesh Dugar
Published 10 Apr 2026

4. Reproducing the Workflow from Scratch

  1. 1. Download the workflow JSON

    Use the JSON export at /data/workflows/14973/14973.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 Turn GitHub releases into audio updates and newsletters with OpenAI and ElevenLabs do?

Deliver your product updates in a modern, accessible format. This workflow automatically transforms GitHub releases into podcast style audio announcements and distributes them via email and Slack. ...

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.