---
title: Ovaj blog je folder sa markdown datotekama
slug: why-this-blog-has-no-cms
locale: sr
description: Iza LiteTMS bloga ne stoji CMS. Svaki tekst je markdown datoteka u repozitorijumu proizvoda, proverena kroz CI i dostupna kao HTML, markdown i RSS.
date: 2026-07-15
updated: 2026-07-15
category: technology
tags: markdown, blog, aieo, engineering
author: LiteTMS Team
draft: false
---

Iza ovog bloga ne postoji CMS, niti baza podataka. Svaka objava je markdown datoteka poslata u isti repozitorijum kao i LiteTMS kod, pa objavljivanje funkcioniše potpuno isto kao i isporuka nove funkcionalnosti: komit i deploy.

Želeli smo da ovo uradimo drugačije od većine korporativnih blogova, i ovaj članak vam prikazuje čitav mehanizam, uključujući i izvorni kod same stranice koju upravo čitate.

## Rešenje koje svi drugi koriste

Tipičan korporativni blog radi na kompletnom sistemu za upravljanje sadržajem (CMS). Baza podataka, administratorski panel, korisnički nalozi, dodaci i tema koja se raspada čim je dotaknete. Sva ta mašinerija postoji samo zato da bi tim urednika mogao da objavljuje bez dodirivanja koda.

Mi nemamo urednički tim, a ceo dan već provodimo u repozitorijumu koda. Zato smo zaobišli tu mašineriju. Svaki dodatni sistem zahteva ažuriranje, pravljenje rezervnih kopija i zaštitu. Sa fasciklom punom tekstualnih datoteka to nije slučaj.

## Kako izgleda datoteka jedne objave

Evo skraćene verzije zaglavlja ove objave, nakon čega sledi struktura samog teksta:

```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.
```

Blok na vrhu je jednostavna lista parova ključeva i vrednosti. Ispod njega se nalazi običan markdown, koji obrađuje standardna markdown biblioteka. Jedna datoteka po jeziku: ova objava postoji kao `.en.md` datoteka i `.pl.md` datoteka sa istim imenom, pri čemu je poljska verzija napisana izvorno, a ne mašinski prevedena.

Sekcija `## FAQ` na kraju primera predstavlja stvarnu konvenciju, a ne ukras. Svako pitanje je formulisano onako kako bi ga korisnik uneo u polje za pretragu, a proces izgradnje (build) pretvara te parove u strukturisane podatke koje pretraživači mogu da prikažu kao obogaćene rezultate. Konkretan primer možete videti na dnu ove stranice.

## Validator umesto urednika

Pre nego što se bilo šta objavi, skripta za build čita svaku datoteku objave i proverava je u odnosu na zadatu šemu. Opis mora imati između 80 i 170 znakova. Kategorija mora biti jedna od pet dozvoljenih vrednosti. Datum mora biti stvarni kalendarski datum, a slug mora da odgovara nazivu datoteke.

Skripta zatim upisuje jednu indeksnu datoteku sa metapodacima svih objava, a sajt čita isključivo tu datoteku. Prikazivanje liste objava zahteva iste resurse bez obzira na to da li ima pet ili pet stotina članaka.

Ista skripta se pokreće u CI procesu pri svakom slanju promena (push). Ako neka objava nije ispravna, ili je neko zaboravio da regeneriše indeks, proces izgradnje puca i ništa se ne postavlja na server. Neispravan sadržaj ne može stići u produkciju, jer produkcija nikada ne prima ono što validator nije odobrio.

## Zašto zapravo markdown

Markdown je pobedio iz sasvim praktičnih razloga. Markdown datoteka je čitljiva u bilo kom tekstualnom editoru, sa namenskim alatima ili bez njih. Razlike se porede red po red (diff), pa se pregled teksta radi isto kao i pregled koda: tačno vidite koja je rečenica promenjena. Pored toga, to je najjeftiniji mogući format za obradu od strane AI asistenata, što svakog meseca postaje sve važnije.

Upravo zbog te poslednje stavke svaka objava se ovde isporučuje na tri načina. Stranica koju čitate je HTML verzija. Ako adresi u pregledaču dodate `.md`, dobićete izvornu datoteku, bajt po bajt onako kako je uneta u repozitorijum, prikazanu kao čist markdown. Takođe, svaki jezik ima svoj RSS fid za čitače i agregatore.

Takođe postoji i mašinski čitljiv katalog svih objavljenih članaka na adresi [/blog/index.md](/blog/index.md), a datoteka `llms.txt` na sajtu usmerava AI botove direktno na njega. Ništa od ovoga se ne pojavljuje kao duplirani sadržaj, jer sirove datoteke nose noindex zaglavlje i kanonski link koji vodi nazad na HTML stranicu.

## Šta vi kao čitalac dobijate time

Ništa od ovoga nije funkcionalnost samog proizvoda. To je odluka o tome kako vodimo sopstveno objavljivanje i uklapa se u obećanje iz [prve objave](/en/blog/welcome-to-the-litetms-blog): bez izmišljenih brojeva i tekst čiju tačnost možete proveriti direktno na izvoru. Sam TMS je izgrađen na istoj sklonosti ka jednostavnim mehanizmima koje možete sami pregledati. Ako želite da vidite kako izgleda, [registracija je besplatna](/en/register).

## FAQ

### Mogu li da čitam objavu na LiteTMS blogu kao čist markdown?

Da. Dodajte `.md` na adresu bilo koje objave i sajt će vas preusmeriti na sirovu izvornu datoteku, prikazanu kao čist markdown. Kompletan katalog objavljenih članaka nalazi se na /blog/index.md.

### Zašto LiteTMS blog ne koristi CMS?

Zato što bi CMS predstavljao još jedan sistem koji treba ažurirati i štititi, a svi koji ovde objavljuju već rade u repozitorijumu proizvoda. Markdown datoteke uz CI validator obavljaju isti posao uz znatno manje održavanja.

### Da li pisanje za AI asistente čini tekstove lošijim za ljude?

Ne. Struktura koju asistenti nagrađuju, što podrazumeva direktan uvodni pasus, opisne naslove i konkretna pitanja sa kratkim odgovorima, jeste ista ona struktura koja omogućava lako pregledanje teksta. Sirovi markdown je poseban format, tako da članak koji čitate ostaje sasvim uobičajen članak.
