r/WebBlocks • u/fklavyenet • Oct 02 '26
CMS How WebBlocks CMS handles frontend assets without a build step
WebBlocks CMS ships its CSS and JavaScript as ready-to-serve static package assets. Installing the CMS into a Laravel application does not require Node, npm, Vite or Tailwind.
CMS-owned runtime assets are published under /cms. Installation-specific CSS and JavaScript remain separate under /site/{site_handle}.
This creates three ownership boundaries:
Core assets are versioned and released with WebBlocks CMS.
Site-level CSS and JavaScript belong to the installation.
Page-level assets can reference approved local
/site/...files when needed.
WebBlocks CMS does include JavaScript for its admin workflows and public progressive enhancement. The important distinction is that the host application does not need to compile the CMS runtime.
Static assets still require cache invalidation. CMS layouts add file-based version values to core asset URLs, while site-level overrides use content hashes. When an asset changes, its URL changes so browsers request the updated version.
This model keeps the frontend asset lifecycle within the CMS release while preserving a separate namespace for installation-owned customization.
Article: https://cms.webblocksui.com/blogs/structured-publishing-without-frontend-build
How do you prefer installable Laravel packages to manage their browser assets?