Turn one blog post into 8 platform-specific pieces of content, automatically.
A self-hosted content repurposing pipeline that watches your blog's RSS feed and automatically generates platform-optimized content for LinkedIn, Twitter/X, Reddit, Email, Dev.to, Hashnode, Indie Hackers, and LinkedIn Carousels — all scheduled on a 7-day drip calendar.
Why Content Repurposing Matters (click to expand)
Most founders write a blog post, share it once on social media, and move on. That's leaving 80% of the value on the table. The research is clear:
The reach multiplier is real. Audiences across platforms have only 15–25% overlap. A post that reaches 1,000 people on LinkedIn reaches a largely different 1,000 on Twitter, Reddit, and Dev.to. Systematic repurposing produces a documented 3–5x reach increase from a single article — Buffer's internal team measured a 400% reach increase when they adopted this approach.
Each platform converts differently. LinkedIn drives a 2.74% conversion rate for B2B — nearly 3x higher than Twitter or Facebook — and generates 80% of all B2B social media leads. Email achieves 2–5% click-through rates. Dev.to and Hashnode cross-posts build domain authority through high-DR backlinks that compound over months. Reddit builds trust that converts through organic search later. The pipeline lets you capture all of these channels from one piece of writing.
SEO compounds over time. Cross-posting to Dev.to (DR 78) and Hashnode with canonical URLs pointing back to your blog builds your domain authority without duplicate content penalties. Content marketing costs 62% less than traditional marketing while generating 3x more leads, and B2B SaaS companies average 702% ROI on SEO with a 7-month breakeven.
Copy-pasting doesn't work. The single most common mistake in content repurposing is publishing identical content across platforms. Each platform has different norms, audiences, and algorithms. A LinkedIn post needs a hook-driven professional format. A Reddit post needs casual peer-to-peer authenticity. An email needs a curiosity gap that drives clicks. This pipeline uses Claude AI to transform your content into platform-native formats — not just repost the same text everywhere.
The time math works. Writing 8 pieces of original content from scratch takes 8–16 hours per week. This pipeline produces all 8 from a single blog post with ~30 minutes of human review. Justin Welsh built a $5M+ solo business on this model (his repurposed posts average 3,220 interactions vs. 900 for originals — a 3.5x multiplier). The 7-day drip schedule extends a single article's relevance across an entire week.
It costs almost nothing. Each blog post costs ~$0.15 in Claude API calls to transform into all 8 formats. The entire pipeline runs on free, self-hosted infrastructure. Compare that to hiring a content team or paying $200+/month for SaaS repurposing tools that do less.
Blog Post (RSS Feed)
|
v
n8n Pipeline (self-hosted, runs every 20 min)
|
v
Jina.ai (converts URL → clean text)
|
v
Duplicate Check (skips already-processed posts)
|
v
Claude AI — Extract Key Points (temp 0.3)
|
v
Claude AI — 8 Parallel Platform Transforms
|
v
7-Day Drip Schedule + UTM Links
|
+──→ Buffer (LinkedIn) [auto]
+──→ Typefully (Twitter/X) [auto]
+──→ Loops.so (Email) [auto]
+──→ Dev.to API [auto]
+──→ Hashnode API [auto]
+──→ Reddit draft [manual]
+──→ Carousel outline [manual]
+──→ Indie Hackers draft [manual]
+──→ Slack notification [review]
- One blog post → 8 content pieces — LinkedIn post, Twitter thread, Reddit discussion, email newsletter, carousel outline, Dev.to cross-post, Hashnode cross-post, Indie Hackers update
- 7-day drip schedule — Content releases staggered across a week for maximum reach
- UTM tracking — Every link includes utm_source/medium/campaign/content for analytics
- Graceful degradation — Unconfigured platforms are skipped silently; the rest continue
- Configurable — One config file to customize for any niche, any brand
- Self-hosted — Runs on your machine via Docker. Your data stays with you
- Comment engine included — Local LLM-powered comment drafting for Reddit, LinkedIn, and Hacker News
Requirements: Docker, Docker Compose, and Node.js 18+ must be installed before starting.
git clone https://github.com/davidsly4954/Automated-Marketing-Engine.git
cd Automated-Marketing-Engine
# Option A: Automated setup (creates .env with secure keys + config.js)
./setup.sh
# Option B: Manual setup
cp config.example.js config.js
cp .env.example .env
openssl rand -hex 16 # → paste into POSTGRES_PASSWORD in .env
openssl rand -hex 16 # → paste into N8N_ENCRYPTION_KEY in .envOpen config.js and fill in at minimum:
companyName— your company or brand namerssFeedUrl— your blog's RSS feed URLnicheDescription— one sentence about what your company does
See config.example.js for all options.
docker compose up -dOpen http://localhost:5678 — you should see the n8n dashboard. The containers run independently of the workflow, so you can start them now while you generate it next.
This reads your config.js and generates a customized n8n workflow:
node n8n/scripts/build-workflow.js- In n8n, click Add workflow → Import from file
- Select
n8n/workflows/content-repurposing-pipeline.json - Toggle the workflow to Active (top-right switch) — workflows are inactive by default
Get a key at console.anthropic.com, add it to .env, and restart:
docker compose restartIn n8n, open your workflow and click Test workflow to run it manually against your latest blog post. You should see content generated for each configured platform and a Slack notification. Once verified, the pipeline will automatically check your RSS feed every 20 minutes for new posts.
Times are in your configured timezone (set timezone and timezoneOffset in config.js).
| Day | Platform | Time | Method |
|---|---|---|---|
| Tue | 10 AM | Buffer (auto) | |
| Tue | Twitter/X | 12 PM | Typefully (auto) |
| Wed | 10 AM | Loops.so (auto) | |
| Thu | Carousel | 10 AM | Manual (Canva) |
| Fri | Reddit #1 | 8 AM | Manual |
| Mon | Dev.to + Hashnode | 9 AM | Auto (API) |
| Tue | Reddit #2 | 9 AM | Manual |
| Wed | Indie Hackers | 10 AM | Manual |
| Category | Cost |
|---|---|
| Per blog post (Claude API) | ~$0.15 |
| Minimum monthly (free tools only) | $0 |
| With LinkedIn + Twitter scheduling | ~$25/mo |
| Full stack (all platforms) | ~$74/mo |
See docs/COST-BREAKDOWN.md for the full breakdown.
Edit config.js to adapt for your niche:
module.exports = {
companyName: 'YourCompany',
blogUrl: 'https://yourdomain.com',
rssFeedUrl: 'https://yourdomain.com/feed',
nicheDescription: 'a SaaS helping businesses with [your value proposition]',
redditSubreddit: 'r/your_niche',
// ... see config.example.js for all options
};Then regenerate the workflow:
node n8n/scripts/build-workflow.jsRe-import the JSON into n8n.
Automated-Marketing-Engine/
├── README.md ← You are here
├── setup.sh ← One-command setup script
├── config.example.js ← Brand/niche configuration template
├── docker-compose.yml ← n8n + PostgreSQL containers
├── .env.example ← API keys template
├── n8n/
│ ├── scripts/
│ │ └── build-workflow.js ← Configurable pipeline generator
│ └── workflows/
│ └── content-repurposing-pipeline.json ← Generated workflow
├── comment-engine/
│ ├── README.md ← Comment engine architecture
│ ├── rules.md ← Platform rules & ban avoidance
│ ├── discovery-setup.md ← Discovery tool setup guides
│ └── prompts/
│ ├── reddit.txt ← Reddit comment system prompt
│ ├── linkedin.txt ← LinkedIn comment system prompt
│ └── hackernews.txt ← HN comment system prompt
└── docs/
├── ARCHITECTURE.md ← How the pipeline works (step-by-step)
├── SETUP-GUIDE.md ← Full setup checklist
├── EMAIL-NURTURE-TEMPLATES.md ← 7-email nurture sequence framework
├── COST-BREAKDOWN.md ← Detailed cost analysis
└── FUTURE-OPTIMIZATIONS.md ← Roadmap of enhancements
| Doc | What It Covers |
|---|---|
| Architecture | How the pipeline works, what each tool does |
| Setup Guide | Step-by-step setup checklist |
| Comment Engine | Local LLM comment drafting workflow |
| Platform Rules | Ban avoidance, karma building timeline |
| Email Templates | 7-email post-action nurture framework |
| Cost Breakdown | Per-post and monthly costs |
| Future Optimizations | Everything not yet implemented |
- Docker and Docker Compose — for running n8n and PostgreSQL
- Node.js 18+ — for the workflow generator script
- A blog with an RSS feed — the pipeline watches this for new posts
- Anthropic API key — for Claude Sonnet content generation (~$0.15/post)
- GPU with 8+ GB VRAM (optional) — for local LLM comment drafting via Ollama
Contributions are welcome. Some ideas:
- Additional platform support (Bluesky, Mastodon, Substack)
- Pre-publish approval flow with Slack interactive buttons
- Google Sheets integration for content tracking
- Quality scoring gate (auto-revise below 7/10)
- Image/carousel generation via Canva API
- Additional LLM provider support (OpenAI, local models)
