Stará rovnica
Väčšina webov stále beží na WordPress, PHP alebo Symfony s oddeleným REST API. Frontend je React alebo Vue, backend je Node.js alebo Laravel, databáza je MySQL niekde na serveri. Funguje to. Ale platíš za to — infraštruktúrou, časom na správu, zložitosťou nasadenia.
Nuxt 4 túto rovnicu mení.
Čo je vlastne Nuxt
Nuxt je fullstack framework postavený na Vue.js. Nie len frontend. Server API routes v Nuxte znamenajú, že nepotrebuješ separátny backend — žiadny Express, žiadny Fastify, žiadny Laravel. Jeden projekt, jeden repozitár, celý stack.
Rendering je hybridný — môžeš miešať SSR (server-side rendering), SSG (staticky generované stránky) a CSR (čisto klientský rendering) podľa potreby. Blog článok? SSG — vygeneruj raz, servíruj z CDN. Realitný portál s filtráciou? SSR — čerstvé dáta pri každom requeste.
Prečo Vue a nie React
Nie preto, že Vue je "lepší". Oboje sú skvelé frameworky a React má väčší ekosystém. Vue má miernejšiu krivku učenia, prirodzenejší <template> systém a výborné komponenty (Vuetify) pre admin rozhrania s formulármi, tabuľkami a dialógmi.
Pre Modulo CMS admin — kde robíš CRUD nad používateľmi, článkami, nehnuteľnosťami — je Vue s Vuetify produktívnejší. Menej boilerplate, viac hotového.
Nuxt 4 vs Nuxt 3
Nie revolúcia. Evolúcia správnym smerom.
Najdôležitejšia zmena: srcDir: 'app/' — aplikačný kód žije v podpriečinku app/, nie v roote projektu. Čistejšia štruktúra, jednoduchšie monorepo. Lepší Cloudflare runtime support priamo v Nitro (server engine Nuxtu). Výkonnostné zlepšenia pri hydratácii a build čase.
Nuxt + Cloudflare = edge-native
Nitro má natívny preset pre Cloudflare Workers a Pages. Kód sa kompiluje do jedného JS bundlu, ktorý beží priamo na Cloudflare edge — nie na vzdialenom serveri v Amsterdame, ale v dátovom centre najbližšom k používateľovi.
Výsledok: response time pod 50ms kdekoľvek na svete. Bez konfigurácie load balancerov, bez nastavovania CDN vrstvy, bez proxy pravidiel. Stačí pnpm build a git push.
V Modulo CMS konkrétne
Modulo CMS je monorepo s dvoma Nuxt projektmi:
- Admin (Nuxt 3 + Vuetify) — správa obsahu, používateľov, rolí. Port 3001.
- Web (Nuxt 4) — verejná časť pre návštevníkov. Port 3000.
Oba zdieľajú rovnakú Cloudflare D1 databázu. Admin píše, web číta. Žiadna synchronizácia, žiadne webhooky, žiadne cache invalidation — databáza je pravda pre oba.
Server API routes v admin Nuxte sú serverové funkcie — server/api/blog/index.get.ts vráti zoznam článkov, server/api/blog/[slug].put.ts uloží úpravy. TypeScript end-to-end, bez externého API servera.
Pre klienta to znamená
Web beží rýchlo bez drahej serverovej infraštruktúry. Kód je štandardný TypeScript/Vue — nie proprietárna platforma, nie zanikajúci ekosystém. Každý Vue vývojár vie v ňom pracovať.
Nuxt 4 nie je hype. Je to pragmatická voľba pre tímy, ktoré chcú moderný fullstack vývoj bez zbytočnej komplexity.





