Back to the blog

Your Own CMS on GitHub: How Copilot Helps Write, Publish, and Announce Content

How we built a simple CMS system based on a GitHub repository: Copilot writes articles, GitHub Actions publishes them to the site, and sends announcements to Telegram and Max.

Authors: slavb18

In the era of vibe coding, you don't need to buy expensive platforms or set up monstrous CMSs. A GitHub repository, a few GitHub Actions, and Copilot are enough - and you have a ready-made autopilot for content marketing.

Here's how it works for us at iconicompany.

Idea: GitHub as a CMS

Classic CMSs (WordPress, Contentful, Strapi) solve the problem of storing and publishing content, but they drag along infrastructure, dependencies, and cost. What if we store content where the code already lives - in a Git repository?

The iconicompany/icontent repository is our CMS:

  • Articles are stored as .mdx files in the content/ru/blog/ and content/en/blog/ folders
  • Any change in the main branch triggers GitHub Actions
  • Actions publishes content, translates it into English, and sends out announcements

Copilot, in turn, acts as an editor and author: it helps write articles directly in the browser or IDE via skills, knows the repository structure, and frontmatter formatting.

Pipeline: From Idea to Telegram Post

The entire process looks like this:

  1. Copilot writes a post - via a skill or directly in the IDE based on a brief
  2. The file goes into content/ru/blog/ - a regular commit to main
  3. GitHub Actions runs automatically - a trigger on changes in content/** is activated
  4. Auto-cleanup - smart quotes, em dashes, and other AI artifacts ("", --, ...) are removed
  5. Automatic translation to English - the LLM translates the post and places it in content/en/blog/
  6. Site synchronization - a webhook is invoked, and the site pulls the new content
  7. Announcement - the LLM generates a short announcement (2-4 sentences), which goes to Telegram and Max

The entire pipeline is described in a single file sync.yml.

Technical Overview

Repository Structure


📚 Read also

iconicompany

outstaffing aggregator ·
project work for IT specialists

for companies Platform

Client sign-in is a separate page, not this site for specialists.

specification notes
  • only the account-area theme is taken from the imatching project — none of the account-area functionality is carried over
  • colours — from the imatching account-area theme
  • fonts — from the imatching account-area theme: Bricolage Grotesque · Public Sans · JetBrains Mono
  • register — “the air of a public site”, not the density of an account area
  • product type — landing, a public site
  • not an admin console
  • not a mobile app
  • reference for the product type — skillstaff.ru, and for the type only
  • the brand and styling of skillstaff.ru are not copied
  • the themes differ: our own product (this public site) and the engine (the “Platform” page)
  • our own product is IT outstaffing; this public site is built for it
  • the tender story is not surfaced on the home page — it lives on the “Platform” page

© 2026 iconicompany

responding — as a link to your hh CV · without registration