Adam Born
BlogKalendář

Příběh nových stránek 🔥

24. 12. 2023

Proč

Protože nejsem schopný udržovat rodinu a známé v obraze, co se děje v mém uměleckém životě, rozhodl jsem se vytvořit stánky, které by fungovaly především jako aktualizovaný kalendář akcí. Dále také slouží jako proof-of-concept zadarmo hostovaných stránek včetně uživatelsky příjemného CMS.

Vznik stránek

Po používání různých frameworků na stránky vytvářené pro klienty – například Vue či Gridsome – jsem narazil na Svelte. V základu se jedná o javascriptový framework (podobně jako Vue.js), který usnadňuje vytváření reaktivních stránek.

Vývojáři Svelte vytvořili i meta-framework SvelteKit, pomocí kterého lze jednoduše vytvořit full-stack webové stránky, včetně generátoru statických stránek.

CMS & Hosting

Největším problémem při vytváření stránek pro mne po dlouhou dobu bylo vybrání nějakého rozumného systému pro správu obsahu (CMS – content management system). Před pár lety jsem narazil na Vercel, hosting statických stránek, který mne dostal svojí jednoduchostí a přímočarostí. Stránky psané v javascriptu pomocí libovolného frameworku je možné poslat na web skrze jednoduchý git commit a Vercel se o vše postará – stránku ze zdrojových souborů zkompiluje a automaticky vystaví a uloží. Problémy, které vznikaly při vývoji stránek v php frameworcích, tedy nutnost udržovat soubory na serveru a v lokálním úložišti synchronizované, složité nastavování a hostování MySQL a jiných databází a v neposlední řadě placení hostingu pro samotnou stránku, jakoby mávnutím kouzelného proutku zmizely.

Problém se přesunul k synchronizaci obsahu a jeho zobrazení. Samozřejmě je možné data stránky ukládat společně s kódem k jejímu zobrazení – tedy například na GitHubu, ale v případě, kdy by stránku měl upravovat někdo technicky méně zdatný, musel by se s tímto nástrojem naučit. Pro moje stránky, které si budu upravovat sám to není zásadní překážkou. Ale pro stránky, které vytvářím pro jiné osoby již je tento aspekt důležitější.

Chvíli jsem koketoval i s tím, napsat si jednoduchý CMS, který by využíval technologie, jež jsou mi blízké, sám. Na první pohled poměrně přímočará záležitost v sobě ale skrývá spoustu složitých překážek. Mým hlavním cílem by bylo vytvořit CMS jež by se obešel bez jakéhokoliv placeného hostingu, tedy že by například skladoval data včetně obrázků na GitHubu. V tu chvíli se ale vývojář musí prokousat poměrně složitým API pro vývoj aplikací spolupracujích s tímto verzovacím systémem. Pro teď jsem tedy práci na tomto systému odložil, ale možná se k ní v budoucnu vrátím.

Použité technologie

Adam Born

Made with by AB