---
title: Гэты блог - папка з файламі markdown
slug: why-this-blog-has-no-cms
locale: be
description: Блог LiteTMS працуе без CMS: кожны артыкул - гэта markdown-файл у рэпазіторыі прадукту, правераны ў CI і даступны як HTML, звычайны markdown і RSS.
date: 2026-07-15
updated: 2026-07-15
category: technology
tags: markdown, blog, aieo, engineering
author: LiteTMS Team
draft: false
---

У гэтага блога няма CMS і няма базы даных. Кожны допіс - гэта файл markdown, зафіксаваны ў тым жа рэпазіторыі, дзе знаходзіцца код LiteTMS, таму публікацыя працуе дакладна так жа, як выхад новай функцыі: коміт і дэплой.

Мы хацелі зрабіць усё інакш, чым у большасці карпаратыўных блогаў, і ў гэтым допісе паказаны ўвесь механізм, уключаючы зыходны код старонкі, якую вы зараз чытаеце.

## Архітэктура, якую выкарыстоўваюць усе астатнія

Звычайны карпаратыўны блог працуе на паўнавартаснай сістэме кіравання кантэнтам. База даных, панэль адміністратара, уліковыя запісы карыстальнікаў, плагіны і тэма афармлення, якая ламаецца ад любога дотыку. Увесь гэты механізм патрэбны для таго, каб каманда рэдактараў магла публікаваць матэрыялы, не дакранаючыся да коду.

У нас няма каманды рэдактараў, і мы і так праводзім цэлы дзень у рэпазіторыі з кодам. Таму мы адмовіліся ад лішніх сістэм. Кожная дадатковая сістэма патрабуе абнаўленняў бяспекі, рэзервовага капіявання і абароны. Тэчка з тэкставымі файламі гэтага не патрабуе.

## Як выглядае файл допісу

Вось скарочаная копія загалоўка гэтага самага допісу і агульная структура яго зместу:

```markdown
---
title: This blog is a folder of markdown files
slug: why-this-blog-has-no-cms
locale: en
description: There is no CMS behind the LiteTMS blog. Every post is...
date: 2026-07-15
category: technology
tags: markdown, blog, aieo, engineering
draft: false
---

The first paragraph answers the title on its own, because that is
the part search snippets and AI assistants quote.

## A section heading

Plain markdown body. Nothing exotic.

## FAQ

### Does this sample show the FAQ convention?

Yes. Each ### line is a literal question, answered right below it.
```

Блок уверсе - гэта просты спіс пар ключоў і значэнняў. Пад ім знаходзіцца звычайны markdown, які апрацоўваецца стандартнай бібліятэкай markdown. Адзін файл на кожную мову: гэты допіс існуе як файл `.en.md` і файл `.pl.md` з такой жа назвай, прычым польская версія напісана носьбітам мовы, а не перакладзена машынай.

Раздзел `## FAQ` у канцы прыкладу - гэта сапраўднае пагадненне аб структуры, а не проста дэкарацыя. Кожнае пытанне сфармулявана так, як чалавек напісаў бы яго ў радку пошуку, і падчас зборкі гэтыя пары пераўтвараюцца ў структураваныя даныя, якія пошукавыя сістэмы могуць адлюстроўваць як пашыраныя вынікі. Жывы прыклад ёсць унізе гэтай старонкі.

## Валідатар замест рэдактара

Перад любой публікацыяй скрыпт зборкі счытвае кожны файл допісу і правярае яго на адпаведнасць схеме. Апісанне павінна мець даўжыню ад 80 да 170 сімвалаў. Катэгорыя павінна быць адным з пяці дазволеных значэнняў. Дата павінна быць сапраўднай каляндарнай датай, а ідэнтыфікатар (slug) павінен супадаць з назвай файла.

Затым скрыпт стварае адзіны індэксны файл з метаданымі ўсіх допісаў, і сайт чытае толькі яго. Генерацыя старонкі са спісам працуе з аднолькавай хуткасцю як для пяцісот допісаў, так і для пяці.

Гэты ж скрыпт запускаецца ў CI пры кожным push. Калі допіс утрымлівае памылкі або нехта забыўся перагенерыраваць індэкс, зборка спыняецца з памылкай і дэплой не адбываецца. Кантэнт з памылкамі не можа трапіць на прадакшн, бо прадакшн ніколі не атрымлівае тое, што не прайшло праверку валідатара.

## Чаму менавіта markdown, калі шчыра

Markdown перамог па вельмі празаічных прычынах. Файл markdown можна прачытаць у любым тэкставым рэдактары, з адмысловымі інструментамі ці без іх. Ён параўноўваецца радок за радком, таму праверка допісу адбываецца гэтак жа, як і рэцэнзаванне коду: адразу відаць, які менавіта сказ змяніўся. Акрамя таго, гэта самы эканомны фармат для апрацоўкі штучным інтэлектам, што з кожным месяцам становіцца ўсё больш важным.

Менавіта таму кожны допіс тут прадстаўлены трыма спосабамі. Старонка, якую вы чытаеце, гэта версія HTML. Калі дадаць `.md` да адраса ў браўзеры, вы атрымаеце зыходны файл байт у байт так, як ён зафіксаваны ў рэпазіторыі, у выглядзе чыстага markdown. Таксама для кожнай мовы ёсць асобная стужка RSS для чытачоў і агрэгатараў.

Акрамя таго, існуе машыначытэльны каталог усіх апублікаваных допісаў па адрасе [/blog/index.md](/blog/index.md), а файл `llms.txt` накіроўвае робатаў ШІ наўпрост да яго. Нішто з гэтага не стварае дубляванага кантэнту, бо зыходныя файлы маюць загаловак noindex і кананічную спасылку на адпаведную старонку HTML.

## Што гэта дае вам як чытачу

Нішто з апісанага не з'яўляецца функцыяй прадукту. Гэта рашэнне адносна таго, як мы вядзем уласныя публікацыі, і яно адпавядае абяцанню з [першага допісу](/en/blog/welcome-to-the-litetms-blog): ніякіх прыдуманых лічбаў і тэкст, які можна праверыць у першакрыніцы. Сама сістэма TMS пабудавана на тым жа падыходзе: зразумелыя і адкрытыя механізмы. Калі вы хочаце азнаёміцца, [рэгістрацыя бясплатная](/en/register).

## FAQ

### Ці магу я прачытаць допіс блога LiteTMS у выглядзе чыстага markdown?

Так. Дадайце `.md` да адраса любога допісу, і сайт перанакіруе вас да зыходнага файла ў фармаце звычайнага markdown. Поўны каталог апублікаваных допісаў знаходзіцца па адрасе /blog/index.md.

### Чаму ў блогу LiteTMS не выкарыстоўваецца CMS?

Таму што CMS была б другой сістэмай, якую трэба абнаўляць і абараняць, а адзіныя людзі, якія тут публікуюць матэрыялы, ужо працуюць з рэпазіторыем прадукту. Файлы markdown з валідатарам у CI выконваюць тую ж задачу і патрабуюць значна менш намаганняў на падтрымку.

### Ці робіць аптымізацыя пад штучны інтэлект артыкулы горшымі для людзей?

Не. Структура, якой аддаюць перавагу асістэнты ШІ, а менавіта прамы ўступны абзац, змястоўныя загалоўкі і дакладныя пытанні з кароткімі адказамі, гэта тая ж самая структура, дзякуючы якой артыкул лёгка бегла праглядаць. Зыходны markdown - гэта асобны фармат, таму артыкул, які вы чытаеце, застаецца звычайным артыкулам.
