Simple blogger - blog do 10 minut

07.05.2015
2 min read
296 words

Tvoříme blog do 10 minut. Jednoduše, efektivně a to všechno na našem oblíbeném Nette Frameworku. Zvládne to každý.

Dlouho jsem si si říkal, že bych si měl udelat blog. Líbil se mi styl publikování na Githubu a také nástroj Jekyll, který tvoří statické soubory a hodí se tedy na Github pages.

Simple blogger není uplně tak statický, jako Jekyll, ale funguje uplně jednoduše na bázi souborů. Díky nabušenému Nette to všechno pěkně šlape do kupy.

Instalace

Vše je zatím ve fázi bouřlivého vývoje, ale na nějaké to vyzkoušení už to je.

Nejjednodušeji blogger stáhnete a použijete pomocí Composeru.

$ composer require minetro/simple-blogger:~0.1

Použití

Základem je rozšíření BloggerExtension, které vám zajistí zaregistrování potřebných služeb a nezbytnou konfiguraci. V prvotní verzi 0.1 toho nastavení opravdu není mnoho.

extensions:
    blog: Minetro\Blog\Simple\DI\BloggerExtensions

Rozšíření bychom měli, nyní konfigurace.

blog:
    posts: %appDir%/data

Uplně minimální konfigurace do začátku. Je akorát potřeba nastavit cestu, kde má Nette\Utils\Finder hledat příslušné články.

Každý článek se skládá z meta souboru a content souboru. Na tomto blogu je použita struktura ukládání článku tato:

  • data/YYYMM/post.neon + post.md

Konkrétně:

  • data/201506/post.neon + post.md
  • data/201507/post.neon + post.md

Je ale na vás jak si články uspořádáte. V meta souboru se specifikuje id, titulek, datum, tagy, kategorie, ruzná nastavení. V content souboru je samotné tělo článku. To je vše!

Šablony

Simple blogger se stará pouze o vyhledání, parsování, načtení a manipulaci s články. Samotné vypsání a vykreslení je už na vás.

Na stejném principu běží i tento blog. Defakto kvůli tomu byl i vytvořen.

Zdrojové kódy

Technologie na blogu

Na tomto blogu je použit již zmíněný Simple blogger, Nette a Uniparser.

Celý blog beží na PHP 5.5 a Nette 2.3.

Currently working

I am currently digging deeper to serverless stuf. Also trying to do my best around Nette [contributte.org & componette.org]. Taking care of 242 libraries across various Github organizations.