Building a Multilingual Blog Pipeline That Auto-Posts to Zenn, dev.to, and velog
Описание и применение
Автоматизированный пайплайн публикации статей на Zenn, dev.to и velog из одного репозитория GitHub, использующий интеграцию Zenn, REST‑API dev.to и внутренний GraphQL‑API velog.
Задача
Manually copy‑pasting articles into three platforms (Zenn, dev.to, velog) is impractical for a Korean engineer in Japan.
Результат
Automated multilingual publishing pipeline reduces manual effort, ensures consistent deployment across platforms, and maintains private drafts in a private repo.
Рабочий процесс
- Set up repository layout with directories for each platform and a material.md backlog
- Configure Zenn GitHub integration from Zenn side and push an empty commit to trigger deployment
- Create GitHub Actions workflow to post dev.to files via official REST API, embedding front matter in body_markdown and setting canonical_url
- Create GitHub Actions workflow to post velog files via internal GraphQL API, passing an empty object for meta and handling access/refresh tokens
- Configure workflows to process only newly added files using git diff --name-only --diff-filter=A
- Store API keys and cookies in GitHub Actions Repository Secrets and avoid logging them
Доказательства
If you install the Zenn Connect app from the GitHub Marketplace side first, the integration never shows up in Zenn's dashboard
dev.to was the pleasant one, since there's an official API
velog was the hard one. There is no official API, so I ended up calling the internal GraphQL endpoint used by the web frontend
- Дата записи: 2026-10-08T12:41:01.240Z