DEV Community

Cover image for Nuxt In 2026: The Vue Full-Stack Framework That Deserves More Attention
Nazar Boyko
Nazar Boyko

Posted on • Originally published at nazarboyko.com

Nuxt In 2026: The Vue Full-Stack Framework That Deserves More Attention

Nitro v3 engine and deployment portability

Everyone knows Next.js is the default full-stack JavaScript framework in 2026. The job ads say so, the AI tooling assumes so, the conference talks revolve around React Server Components, and even people who've never touched a Vue file have an opinion about which version of getServerSideProps they like best. Everyone is mostly right - and missing a piece of the story.

The piece they're missing is that on the other side of the framework wall, Nuxt has spent the last two years quietly turning into one of the most thoughtfully designed full-stack frameworks in the ecosystem. Nuxt 4 landed in July 2025, the project is now on v4.4.x, and Nuxt 5 with the new Nitro v3 engine is on the runway. If you last looked at Nuxt around the v2-to-v3 jump, when everything was breaking and the migration guide was longer than some books, you are looking at a different framework today.

This isn't an "X killed Y" piece - Next.js isn't going anywhere, and for plenty of teams it's the right call. But if you're picking a stack for a new project, or you write Vue and feel mildly defensive every time the LinkedIn algorithm shows you another React thread, it's worth understanding what Nuxt actually is in 2026 and why people who use it tend to stick with it.

The thesis: convention plus Nitro

Two ideas hold the whole framework together.

The first is convention over configuration, in the original Rails sense. You don't wire up a router, you put files in app/pages/. You don't import components, you drop them in app/components/ and reference them by name. You don't import ref or computed or your own composables, they're auto-imported with types intact. The framework has a strong opinion about where things go, and once your hands learn it, you stop thinking about plumbing entirely.

The second is Nitro, the server engine Nuxt sits on top of. Nitro is a separate open-source project (also from the UnJS team) that turns your server/api/, server/routes/, and server/middleware/ files into a standalone Node-compatible server distribution. According to the official docs, the build output goes into .output/ and is independent of node_modules - you can scp it onto a fresh VM with just Node installed and it runs. The same build can target AWS Lambda, Cloudflare Workers, Deno Deploy, Bun, Vercel Edge, Netlify, or a long-running Node process, with no code changes. That last sentence is doing a lot of work, so let's pull on it.

Nitro: the part nobody talks about enough

Nitro is what makes Nuxt's deployment story unusual. Most JS frameworks have a "preferred host" - Next.js feels happiest on Vercel, Remix on Cloudflare, SvelteKit on whatever adapter you bolt on. Nuxt also has those friendly partners, but the underlying server engine is genuinely platform-agnostic by design.

You write your server code once:

server/api/products/[id].get.ts

export default defineEventHandler(async (event) => {
  const id = getRouterParam(event, "id");
  const product = await useStorage("data").getItem(`product:${id}`);

  if (!product) {
    throw createError({ statusCode: 404, statusMessage: "Not found" });
  }

  return product;
});
Enter fullscreen mode Exit fullscreen mode

Then you pick a deployment preset in nuxt.config.ts (or let Nitro auto-detect from the environment):

nuxt.config.ts

export default defineNuxtConfig({
  nitro: {
    preset: "cloudflare-pages",
  },
});
Enter fullscreen mode Exit fullscreen mode

The same defineEventHandler runs on Cloudflare's edge runtime, on a Lambda cold start, on a Bun process, on a long-lived Node server. The storage layer (useStorage()) abstracts over filesystem, Redis, S3, Cloudflare KV, and a handful of other drivers, so you write getItem(key) and pick the backend in config.

The bit that surprises people coming from other frameworks is the standalone output. After nuxt build, your .output/server/ directory contains a single bundled server with all dependencies inlined. No npm install on the production server. No node_modules to ship. The whole thing is designed to be trivially containerised, dropped into a serverless runtime, or copied somewhere static. Compare that to a typical Node app where you ship package.json, run npm ci --omit=dev on the box, and pray the lockfile matches - Nitro just hands you a self-contained directory.

There's also a feature called direct API calls worth knowing about. When you write:

const products = await $fetch("/api/products");
Enter fullscreen mode Exit fullscreen mode

...the $fetch helper checks where it's running. On the browser, it does a normal HTTP call. On the server (during SSR), it skips the network entirely and calls the route handler function directly. No localhost loopback, no extra socket, no double serialisation. That's a free latency win that you'd have to engineer by hand in many other stacks.

Architecture diagram titled Nitro: one server, many targets - a central server directory box fanning out to Node.js, AWS Lambda, Cloudflare Workers, Deno Deploy, Bun, Vercel Edge, and Netlify.

The Nuxt 4 happy path: app/ directory and friends

Nuxt 4's headline change was the new project layout. Your application code now lives under app/, separated from the rest of the repo:

my-nuxt-app/
├─ app/
│  ├─ assets/
│  ├─ components/
│  ├─ composables/
│  ├─ layouts/
│  ├─ middleware/
│  ├─ pages/
│  ├─ plugins/
│  ├─ utils/
│  ├─ app.vue
│  └─ error.vue
├─ content/
├─ public/
├─ shared/
├─ server/
└─ nuxt.config.ts
Enter fullscreen mode Exit fullscreen mode

This isn't a cosmetic rename. The split exists for two reasons. First, file watchers were doing a lot of unnecessary work watching node_modules/ and .git/ siblings - pulling app code into its own subdirectory makes dev-server startup measurably faster, especially on Windows and Linux. Second, the framework now generates separate TypeScript projects for app, server, shared, and config code. Your editor knows the difference between client and server context, autocompletes correctly in each, and stops offering you window in your server/api/ handlers.

The shared/ folder is the third star of the show. Types, validators, and pure utility functions that both the browser and the server need go there, and they're auto-imported on both sides. Before this existed, the typical Nuxt project had a utils/ folder somewhere ambiguous, and people would accidentally pull a Node-only helper into client code, watch the bundle balloon, and curse for an hour. Now there's a designated place for "this runs everywhere" code, and the bundler enforces it.

If you're upgrading from Nuxt 3, the migration is gentle. Nuxt 4 keeps a compatibility mode for the v3 layout - the framework detects which directory structure you've adopted and rolls with it. Most teams can run npx nuxt upgrade --dedupe and a Codemod-powered migration script, and ship the same day.

Auto-imports: the magic and the seam

The bit that polarises people is auto-imports. In Nuxt, you don't import ref, computed, useFetch, definePageMeta, useRoute, your own composables, or your own components. They appear in scope, fully typed, and the production bundle only includes what you actually used.

It feels like magic the first day and like a black box the third. The honest answer is somewhere in between. Nuxt's auto-import system is implemented with unimport, which generates type definitions into .nuxt/imports.d.ts and a small AST transform that rewrites bare references at build time. It is genuinely "only what you use," not a global window.ref situation, and IDE autocompletion works as long as the Nuxt dev server (or nuxt prepare) has been run at least once.

There are a few gotchas worth knowing before you commit:

  • Nested directories aren't scanned by default. Only app/composables/ (and index.ts inside it) are picked up. If you put app/composables/auth/useSession.ts thinking organisation is free, the import silently won't resolve. You either flatten the folder or extend the scan paths in nuxt.config.ts.
  • The use prefix isn't decorative. Composables that don't start with use won't be picked up by some linting rules, and Vue's own reactivity-tracking machinery uses that convention as a hint. Naming a composable getUser instead of useUser will work in some ways and break in others.
  • Auto-imports vs. Nuxt layers. If you structure your project as multiple layers (the Nuxt feature for splitting a monorepo into composable mini-apps), the layer-override mechanism requires explicit imports for composables - auto-imports defeat the override priority. People hit this when they try to use layers and aren't sure why their override isn't winning.

For most projects, none of this is a problem. For larger codebases that lean hard on layers, the "explicit imports for composables" rule is something to plan around early.

Data fetching: useFetch, useAsyncData, and the hydration trap

This is the part where Nuxt's design rewards you for following the path and punishes you for going off it. The framework's data-fetching story revolves around two composables: useAsyncData (low-level, you pass a function) and useFetch (higher-level, you pass a URL and it calls $fetch under the hood).

The reason they exist - and the reason you should use them instead of bare $fetch in a <script setup> - is payload hydration. When the page renders on the server, useFetch runs the request once, embeds the result in the rendered HTML payload, and when the client takes over it reads from the payload instead of re-fetching. One round trip total. With bare $fetch, you get two: one on the server during SSR, one on the client during hydration. Plus the inevitable hydration-mismatch warning when the two responses differ by a few milliseconds.

Here's the correct version:

pages/products.vue

<script setup lang="ts">
const { data: products, error, pending, refresh } = await useFetch("/api/products");
</script>

<template>
  <div>
    <p v-if="pending">Loading…</p>
    <p v-else-if="error">Couldn't load products.</p>
    <ul v-else>
      <li v-for="product in products" :key="product.id">{{ product.name }}</li>
    </ul>
    <button @click="refresh">Refresh</button>
  </div>
</template>
Enter fullscreen mode Exit fullscreen mode

And the version that looks correct but isn't:

pages/products-buggy.vue

<script setup lang="ts">
// This compiles. It even mostly works. It will give you hydration warnings.
const products = ref([]);

onMounted(async () => {
  products.value = await $fetch("/api/products");
});
</script>
Enter fullscreen mode Exit fullscreen mode

The second version skips SSR data fetching entirely. The page renders empty on the server, hydrates with an empty list, fetches on the client, then re-renders. Users see the flicker, search engines see no content, and you've thrown away half of what you're paying for by running a Nuxt app at all.

There are subtler traps. useFetch and useAsyncData must be called synchronously at the top level of <script setup> or another composable. Calling them inside an async function or after an await breaks the SSR-to-client handoff - the framework loses track of which call corresponds to which hydration slot. If you need conditional fetching, use the immediate: false option and trigger refresh() later, don't wrap the composable in an if.

The Nuxt docs have a whole hydration best-practices page dedicated to this, and it's worth reading once even if you think you understand SSR. The rules feel arbitrary until you internalise the SSR-payload model, then they feel obvious.

Server routes feel like Express, run anywhere

The server/ directory is where Nitro shines for backend-style work. File names map to routes:

server/
├─ api/
│  ├─ products/
│  │  ├─ index.get.ts        → GET  /api/products
│  │  ├─ index.post.ts       → POST /api/products
│  │  └─ [id].get.ts         → GET  /api/products/:id
│  └─ health.ts              → ANY  /api/health
├─ routes/                   (no /api prefix)
│  └─ webhooks/
│     └─ stripe.post.ts      → POST /webhooks/stripe
└─ middleware/
   └─ auth.ts                runs on every request
Enter fullscreen mode Exit fullscreen mode

The HTTP method goes in the filename suffix (.get.ts, .post.ts, .delete.ts, etc.). Catch-all routes use [...path].ts. Middleware in server/middleware/ runs on every server request - useful for auth checks, logging, request ID injection.

Inside a handler, you have h3's helper toolkit: getQuery, readBody, getRouterParam, getHeader, setCookie, sendRedirect, createError. The body is parsed for you. Errors thrown as createError({ statusCode, statusMessage }) are serialised as JSON. There's no router config to maintain, no middleware chain to compose by hand, no Express-style app.use boilerplate.

The result feels closer to a small Go web service than to a typical Node project. You drop a file, you have a route. You're shipping APIs, server-rendered pages, and the static asset pipeline from one project.

Modules: the part Next.js doesn't have

This is where Nuxt's culture differs most from React-land. The official Nuxt modules registry curates packages that integrate cleanly with the framework: same configuration style, same lifecycle hooks, same auto-import contract. You install one, add it to modules: [...] in nuxt.config.ts, and it wires itself in.

A few that ship in basically every serious project:

  • Nuxt UI - 125+ accessible components built on Reka UI and Tailwind CSS. Includes 200,000+ icons via Iconify, dark/light mode out of the box, and i18n hooks for 50+ languages. It's the closest thing the Vue ecosystem has to shadcn/ui except more comprehensive and officially maintained.
  • @nuxt/image - drop-in <NuxtImg> and <NuxtPicture> components that do responsive sizing, lazy loading, AVIF/WebP conversion, and integrate with 20+ image providers (Cloudinary, Imgix, Cloudflare Images, S3, etc.) through the same component API.
  • @nuxtjs/i18n - locale-aware routing, lazy-loaded translation files, automatic SEO hreflang tags, browser language detection. Configures Vue I18n v11 under the hood.
  • @nuxt/content - Markdown + Vue components as a CMS. Version 3 moved to an SQL-backed query layer for better performance on large content sets, kept the MDC syntax (Vue components inside Markdown), and added typed collections so your queries are typed end-to-end.
  • @pinia/nuxt - Pinia is the de facto state management library for Vue, and the Nuxt integration handles SSR state serialisation for you.

The point isn't that React doesn't have equivalents - it has more options for almost all of these. The point is that the React equivalents are independent libraries you assemble yourself, each with its own configuration model, its own SSR story, its own opinion about file structure. Nuxt's curated module ecosystem trades some flexibility for the experience of "I want auth, internationalisation, image optimisation, and a UI library, all working together" being roughly twenty lines of nuxt.config.ts.

For solo developers and small teams, that's a real productivity multiplier. For larger teams who want to bring their own design system and their own state library, the modules are optional - you can run a bare Nuxt app and treat it as a Vue + Vite + Nitro stack with conventions.

Where Nuxt loses to Next.js (and where it doesn't)

It would be dishonest to pretend the two frameworks are at parity. They aren't, and the reasons matter.

Where Next.js is ahead:

  • Ecosystem size. React's npm graph is bigger than Vue's, and that compounds. More third-party UI kits, more meeting-room "everyone here knows React" defaults, more chance that the library you need has React bindings first and Vue bindings six months later (or never).
  • AI tooling. The Vercel AI SDK is React-first. Most LLM example code, most copy-paste integrations, and tools like v0 are built around React. Nuxt has caught up partially - there's been recent work on AI-friendly modules and Vercel's v0 has Vue support - but if "drop in an OpenAI streaming chat component in an afternoon" is your benchmark, Next.js is still the shorter path.
  • React Server Components. Whether you love or hate RSCs, they're a genuine architectural innovation, and Vue/Nuxt doesn't have a direct equivalent yet. Nuxt has SSR, hybrid rendering, ISR-equivalent via on-demand prerendering, and Vue 3.6's Vapor mode for client-side perf, but there's no "server component" primitive in the same sense.
  • Job market. This one's just demographics. There are more React jobs. Don't pick Nuxt because you think it'll be a career bet - pick it because it suits the project.

Where Nuxt is ahead, or at least different:

  • Convention pressure. Two senior Vue/Nuxt developers will write surprisingly similar apps. Two senior React/Next.js developers will pick different state libraries, different data-fetching primitives, different file organisations. Convention is a feature when you're onboarding a team or rotating people through a codebase.
  • Deployment portability. Nitro's "build once, deploy anywhere" story is real and works. Next.js has steadily improved its non-Vercel story, but Nitro was platform-agnostic from day one.
  • Less churn. Vue 3 has been stable since 2020. Nuxt 4 is a careful evolution of Nuxt 3, not a rewrite. React's lifecycle of "everything you knew about data fetching is wrong now" every 18 months has no Vue equivalent. For long-lived projects this is genuinely valuable.
  • Default i18n. Multilingual sites are first-class in Nuxt via @nuxtjs/i18n. In Next.js they involve assembling a stack.
  • A genuinely small footprint. A blank Nuxt app boots faster, ships less JavaScript, and uses less memory on the server than a blank Next.js app of equivalent functionality. The gap closes once you add features, but the starting point is leaner.

The right framework is the one whose tradeoffs match your project. If you're building a marketing site with a small CMS and a handful of dynamic routes, Nuxt is genuinely a delight. If you're building an enterprise dashboard that needs a particular React-only component library and a team of React-experienced engineers, the answer is obvious.

What's coming: Nuxt 5 and Vue 3.6 Vapor mode

Two things are on the horizon that will shape what "modern Nuxt" means by the end of 2026.

Nuxt 5 and Nitro v3. Per the Nuxt team's release post, Nuxt 5 will arrive "on the sooner side" and ships with Nitro v3 and h3 v2 under the hood. The headline improvements are around performance, the Vite Environment API for faster dev cycles, more strongly typed fetch calls, and built-in SSR streaming. None of these change the model - useFetch is still useFetch, your server/api/ files still work - but the floor of "how fast is a cold dev server" and "how typed is my response payload" both move up.

Vue 3.6 Vapor mode. Vue 3.6 introduces an opt-in compilation mode called Vapor that skips the virtual DOM entirely for components that opt in, generating direct DOM manipulation code instead. The Vue team has been clear that as of mid-2026 it's still beta and only covers a subset of template features (Composition API and <script setup> only - no Options API), but the performance numbers from the Vue Mastery and Vue School previews put Vapor in the same ballpark as Solid.js and Svelte 5 for raw rendering throughput. Once it's stable and Nuxt picks it up, you'll be able to mark a component <script setup vapor> and get the runtime savings without rewriting your logic.

Neither of these is a reason to wait. Nuxt 4 is stable, production-ready, and being used by serious teams today. But they're worth knowing about if you're making a "where will this stack be in 18 months" decision - the curve is pointing in a healthy direction.

A small honest moment

If you've read this far and you're still on Next.js: stay there. None of this is a reason to throw away a working stack. Framework migrations are a tax on your team that you pay in months and recoup over years, and the years have to be worth it.

But if you're choosing a stack for a new project and the React-first defaults aren't a strict requirement - if your team has Vue experience, if you value convention and a smaller surface area, if you want to deploy the same code to a VM and an edge worker without thinking - Nuxt is the framework that quietly deserves a longer look in 2026. The criticism that it's a "Next.js alternative" undersells it. It's a different design philosophy applied carefully over four major versions, and the result is one of the most coherent full-stack frameworks in the ecosystem.

The Vue community has spent the last few years building something good without making a lot of noise about it. The noise was never the point.


Originally published at nazarboyko.com.

Top comments (34)

Collapse
 
michael_salinas_472fbf6c1 profile image
Michael Salinas

Thank you for sharing such an excellent post. I really enjoyed reading it.

I’m a Python Full-Stack Engineer with over 10 years of experience designing and building scalable software solutions for clients across a variety of industries. Along the way, I’ve learned that successful projects depend not only on strong technical execution but also on creating real business value.

With my recent contract completed, I’m exploring new opportunities to collaborate with professionals who value innovation, practical problem-solving, and long-term partnerships. I enjoy discussing ideas that combine technical excellence with sound business strategy, creating outcomes that benefit everyone involved.

I believe every connection has the potential to become something meaningful. If you're interested in exchanging ideas, exploring opportunities, or simply connecting with someone who enjoys building impactful technology, I'd be happy to hear from you.

Wishing you success in your future endeavors, and I look forward to connecting.

Collapse
 
nazar-boyko profile image
Nazar Boyko

thanks for sharing!

Collapse
 
michael_salinas_472fbf6c1 profile image
Michael Salinas

I'd be happy to exchange experiences. Do you have any projects currently in progress?

Thread Thread
 
nazar-boyko profile image
Nazar Boyko

Hey, I keep my projects pretty small-scale, so there's nothing I'd bring someone onto at the moment. I appreciate the kind words about the post though. Wishing you a quick landing on the next contract!

Thread Thread
 
michael_salinas_472fbf6c1 profile image
Michael Salinas

If you allow it, I would like to have a serious conversation with you regarding profit.

Collapse
 
xrated profile image
Xrated

Great overview of where Nuxt stands today. I especially liked the section about Nitro and deployment portability, it’s an underrated advantage. One question though: do you think Nuxt's smaller ecosystem is still a significant blocker for larger enterprise projects, or has that gap narrowed enough in 2026?

Collapse
 
nazar-boyko profile image
Nazar Boyko

Thanks, really appreciate that. I think the gap has narrowed a lot, but it still depends on the project. For most enterprise apps, Nuxt itself is mature enough now. The bigger blockers are usually hiring, React-only vendor libraries, and AI tooling that still defaults to React. If those are not hard requirements, I would absolutely consider Nuxt for serious enterprise work in 2026.

Collapse
 
xrated profile image
Xrated

That makes a lot of sense, especially the point about AI tooling still being React-first.
Have you seen any enterprise teams successfully adopt Nuxt from scratch recently, or is it mostly existing Vue teams doubling down on their stack?
Also, I just sent you a connection request on LinkedIn. Looking forward to staying in touch!

Thread Thread
 
nazar-boyko profile image
Nazar Boyko

Thanks, just accepted it. From what I’ve seen, most successful Nuxt adoption still starts with teams that already like Vue or want a more opinionated stack for a new product. Pure enterprise greenfield adoption happens, but it is usually easier when the team is not locked into React-only libraries or hiring assumptions.

Collapse
 
korelyy profile image
CarsonJ

Really appreciate this even-handed, detail-rich analysis of modern Nuxt alongside Next.js—most comparative articles lean heavily into tribal takes, while yours focuses entirely on practical engineering tradeoffs that map directly to real project requirements.
Your deep focus on Nitro was my favorite section; it’s rare to see writers unpack how transformative its platform-agnostic runtime and self-contained build artifacts are for teams deploying across edge workers, VMs, serverless functions, and containers without rewriting backend logic. The breakdown of internal $fetch skipping roundtrips during SSR is a subtle performance win most developers don’t realize exists out of the box in Nuxt.
I also thought your breakdown of Nuxt 4’s folder restructuring solved a huge unspoken pain point from earlier versions—separating app, server and shared code eliminates so many type and bundling footguns I’ve watched teams fight with for years. The honest coverage of auto-import limitations, hydration data-fetching rules, and layer override caveats adds so much tangible value beyond surface-level framework marketing.
Your balanced list of each stack’s strengths felt extremely grounded: acknowledging Next’s larger React ecosystem, AI tooling lead and broader job market while highlighting Nuxt’s standout advantages like consistent team-wide conventions, minimal breaking changes across major versions, and native first-class i18n support was refreshingly fair.
One small follow-up question: Have you tested Vue’s upcoming Vapor mode with early Nuxt 5 builds, and how much of a rendering performance gap do you expect it to close versus RSC-powered Next apps for client-heavy interfaces long-term? This article’s become my go-to resource for recommending teams weigh Nuxt as a viable alternative to default Next.js setups.

Collapse
 
nazar-boyko profile image
Nazar Boyko

Thank you, I really appreciate this thoughtful comment. I have only tested Vapor mode lightly so far, mostly around the direction rather than real production Nuxt 5 usage. My expectation is that it can narrow the gap for client-heavy interfaces, especially by reducing runtime overhead, but I do not think it replaces the architectural advantage of RSC in Next. For me, the bigger win would be Vue and Nuxt becoming noticeably faster without making the developer experience more complex.

Collapse
 
grok_olsadar3 profile image
Grok

interesting. Nice article. It doesn’t try to turn Nuxt into a Next.js killer. It feels more like a practical reminder that Nuxt has its own strengths.

Collapse
 
nazar-boyko profile image
Nazar Boyko

Exactly. I think the real point is not "Nuxt beats Next", but that Nuxt deserves a fair look when the project needs Vue, conventions, and deployment flexibility.

Collapse
 
grok_olsadar3 profile image
Grok

The Nitro part stood out to me the most. Being able to write server routes once and deploy them to different targets without changing the backend logic is a big advantage.

Thread Thread
 
nazar-boyko profile image
Nazar Boyko

That's also what I find underrated. People often focus on the frontend side of Nuxt, but Nitro makes it feel much closer to a full-stack platform.

Thread Thread
 
grok_olsadar3 profile image
Grok

I also liked the point about useFetch and hydration. A lot of developers can build something that works visually, but still accidentally lose the SSR benefits. Thanks for writing it. It was a clear and balanced take, especially for people who have not checked Nuxt seriously in a while.

Thread Thread
 
nazar-boyko profile image
Nazar Boyko

Yes, Nuxt gives you a happy path, but you still need to understand why that path exists. Thanks for reading and for the thoughtful feedback.

Collapse
 
mudassirworks profile image
Mudassir Khan

the $fetch server side optimization is the one i hadn't clocked until reading the post. skipping the network for SSR calls and calling the route handler directly is the kind of thing that saves you from a mysterious 40ms rounding error in your p95 latency.

we had to build this short circuit ourselves in Next.js as RSC to route handler middleware. the fact Nuxt does it by default is a real quality of life difference.

the convention pressure point also lands. onboarded three engineers to a Next app last quarter and the first two weeks were about unlearning routing assumptions. Nuxt's file to route model collapses that learning curve.

has Nitro's standalone output held up for teams deploying to both Lambda cold start and Cloudflare edge in the same project?

Collapse
 
nazar-boyko profile image
Nazar Boyko

Yeah, the $fetch thing is easy to miss but it adds up fast at scale.
On Nitro, it's held up well in my experience. The same codebase deploys to both without changes, you just swap the preset. Lambda cold starts are the usual tradeoff, the bundle is lean but you still pay the init cost, so anything latency sensitive I keep on the edge and let Lambda handle the heavier backend routes. Splitting it that way per route has worked better than trying to make one target do everything.

Collapse
 
robin_harman_f7fecdd7f379 profile image
Robin Harman

Hello I am very interested

Collapse
 
nazar-boyko profile image
Nazar Boyko

Thanks Robin, glad you enjoyed it.

Collapse
 
robin_harman_f7fecdd7f379 profile image
Robin Harman

Hi Nazar

Thank you for reaching out to me

I am very interested in this postion

Best regards

Robin

Collapse
 
pocpoc0d profile image
Poc Poc

Really enjoyed this breakdown. Nuxt’s deployment flexibility with Nitro feels seriously underrated, especially for teams that want options beyond a single hosting platform.

Collapse
 
nazar-boyko profile image
Nazar Boyko

Thanks so much, glad you found it useful!

Collapse
 
jacobelordi profile image
Jacob Elordi

Great overview. Nuxt has matured a lot, and Nitro makes it much more compelling for full-stack projects than many developers realize.

Collapse
 
nazar-boyko profile image
Nazar Boyko

Appreciate it, thanks for reading!

Collapse
 
igordop profile image
Игорь

👍️👍️👍️👍️👍️👍️👍️👍️👍️👍️

Collapse
 
nazar-boyko profile image
Nazar Boyko

thanks for checking it out!

Collapse
 
joeybart profile image
Joey Bart

I've never had a chance to try Nuxt, but I guess I should give it a try 😃

Collapse
 
nazar-boyko profile image
Nazar Boyko

Give it a go with Claude AI 😃 You’ll get the hang of it in no time. But it’s worth giving it 100%. I’d love to hear what you think!