I used to spend 10-15 minutes creating featured images for every blog post. Even with Python automation, I still had to open a CSV file and run terminal commands.
Now it's completely hands-free.
The New Workflow:
Open a form on my phone → type the blog title → select category → hit submit.
30 seconds later, the image is generated, uploaded to MinIO, and saved in Airtable. Zero manual work.
How It Works:
- Airtable form submission triggers n8n webhook
2. n8n fetches the background image for that category
3. Calls my self-hosted Python API (running in Docker)
4. Python generates 1200×628 image with title + category overlay
5. Uploads to MinIO (self-hosted S3)
6. Airtable updates with the final image URL
The Technical Challenge:
Getting n8n to pass actual values to Python (not template variables) was tricky - I had to build a custom payload.
The Python script handles everything: downloads the background, adds overlay, renders text with shadows, uploads to MinIO, and returns the URL to Airtable.
(Full technical breakdown in the blog post)
Two Versions Available:
I built this with Airtable, but I also created a NocoDB version (free self-hosted alternative).
Want the full breakdown?
I documented everything with code samples, screenshots, and the complete workflow:
The workflow, Airtable automation script, and Python code are now available in the n8n Template Library.
💬 Want automation like this for your setup?
- Or book a Done-For-You service and I'll set it up for you
Questions? Drop them below 👇