The Old Equation

Most websites still run on WordPress, PHP, or Symfony with a separate REST API. The frontend is React or Vue, the backend is Node.js or Laravel, the database is MySQL somewhere on a server. It works. But it has a cost.

Each component requires maintenance, updates, monitoring. The server must run 24/7. The database must be backed up. When traffic spikes, you need to scale.

Nuxt 4 and Cloudflare

Nuxt is a fullstack framework built on Vue.js. Server API routes in Nuxt mean you do not need a separate backend. Rendering is hybrid — SSR, SSG, CSR as needed.

Nitro has a native preset for Cloudflare Workers and Pages. Code compiles into a single JS bundle that runs on the Cloudflare edge — in the data center closest to the visitor.

Nuxt 4: What Changed

Nuxt 4 brings a new directory structure (the app/ directory), improved TypeScript integration, and an enhanced dev server. For Modulo CMS, we migrated the web app to Nuxt 4, while the admin stayed on Nuxt 3 for Vuetify compatibility.

Why Edge Deployment?

A traditional server sits in one data center. When your server is in Frankfurt and the visitor is in São Paulo, every request travels thousands of kilometers.

Edge deployment means code runs in the data center closest to the visitor. Cloudflare has 300+ locations. Latency drops from hundreds of milliseconds to tens of milliseconds.

Practical Impact

For Modulo CMS this means:

  • API responses under 50ms for European visitors
  • €0 server cost (Cloudflare Pages Free tier)
  • Automatic scaling — Cloudflare handles millions of requests without configuration
  • Built-in CDN for static assets

Conclusion

Nuxt 4 with Cloudflare is not just a technology choice. It is an architectural decision that reduces complexity and costs while increasing performance. For a CMS platform that serves dozens of clients with varying demands, this combination is ideal.