Image by Jakub Żerdzicki on Unsplash.
At most teams, image handling is where "automated posting" quietly becomes manual again.
The text pipeline works. The publishing APIs work. But images end up as an afterthought: no attribution, inconsistent style, weak relevance, or missing cover fields on one platform. This post documents the production workflow we now use to fix that.
The Goal
Publish the same article to Hashnode and Dev.to with:
- one aligned hero image
- explicit image attribution close to the image
- platform-native cover mapping
- deterministic quality checks before publish
The Image Pipeline We Implemented
- Generate article draft and title.
- Query Unsplash using article-aware keywords.
- Select a landscape image with strong topical fit.
- Capture attribution metadata:
- photographer name
- photographer profile URL
- photo page URL
- Register Unsplash download tracking for compliance.
- Map the same chosen image URL to both platforms:
- Hashnode
coverImageURL - Dev.to
main_image
- Hashnode
- Insert attribution line directly beneath the first in-body image.
Why This Works Better
This workflow removes ambiguity. Instead of "find an image later," every publish run has required image fields and a go/no-go quality gate.
That gives us:
- visual consistency across platforms
- proper author attribution on every article
- better click-through appeal
- fewer manual fixes after publish
Practical Rules We Enforce
- No image, no publish (unless explicit override).
- Attribution is mandatory and near the image.
- One canonical hero image per article for cross-platform consistency.
- Image must be public and renderable before API publish.
Final Note
Automation is only "production-ready" when content quality, attribution, and compliance are embedded into the workflow, not bolted on afterward.
This post itself was published through that exact pipeline.
Connect With Me
Krishna Soni -- Game Developer, Researcher, Author of The Power of Gaming
LinkedIn: Krishna Soni | Kri Zek
Web: krizek.tech | Altered Brilliance on Google Play
Socials: Happenstance | Instagram @krizekster | Instagram @krizek.tech | Instagram @krizekindia
Top comments (0)