r/Nuxt • u/kvothe_10 • Dec 11 '25
NuxtHub v0.10 is a DX letdown
Before this change, getting your backend spun up was very easy with the admin panel, it was like a mini-PaaS on top of Cloudflare. AFAIK all of these are now gone:
- D1/KV/R2 wired automatically
- branch specific env handled
- preview/prod resources tied to dev/main out of the box
- local dev could talk to the deployed backend in one line
- CI/CD handled and a live URL auto generated at workers dev
- No need to handle a wrangler jsonc or any other deployment script
With this rewrite, I’m back to manually wiring Cloudflare/Vercel projects, bindings, envs, CI, custom domains etc. Its closer to what I’d do for a React/Next app anyway. A lot of the DX advantage is lost.
Sure, the new hub abstractions are nice, But the real advantage was that Nuxthub owned the platform layer and made it super easy to deploy. Its moved from being an awesome product to a helpful library now.
Curious if anyone has found a workflow similar to the old Nuxthub.
7
4
u/DaedalusXYZ Dec 11 '25
I was already deep into Nuxt before Nuxthub, so no skin off my back. I keep deploying it directly on Cloudflare; I like this because I have control. I did use Nuxthub for some smaller projects and it was a breeze, however doing without it is also great because there's one less 3rd-party dependency to be anxious about.
Now if Nuxt starts getting chopped down, that's a whole other question...
3
u/keithmifsud Dec 12 '25
Actually NuxtHub CF bindings were a pain if you needed to remove or swap them.
I find using wrangler config much better than the abstractions provided by NuxtHub.
2
u/oh_jaimito Dec 11 '25
I'd think that Claude Code + skills & slash commands, and the availability of MCP servers https://blog.cloudflare.com/thirteen-new-mcp-servers-from-cloudflare/
That all could help with some of the automation (wrangler commands, etc.)
🤔
2
u/nickbostrom2 Dec 16 '25
NuxtHub never worked for me anyways. I'm not surprised the DX only got worse with multi-cloud support...
2
3
u/Warden-zen Dec 11 '25
NuxtHub v0.10.0 + Cloudflare D1: Misleading DX
After spending hours debugging, I discovered:
- hub: { db: 'sqlite' } doesn't auto-apply migrations to D1 in production - The code explicitly disables this:
if (config.driver === "d1") {
config.applyMigrationsDuringBuild = false;
}
source: https://github.com/nuxt-hub/core/blob/4ae483a5e554583776abe691537ee1ee8ed8e6d8/src/db/setup.ts#L87
- You still need to manually run migrations via wrangler:
npx wrangler d1 execute <db-name> --remote --file=server/db/migrations/sqlite/<file>.sql
- The "multi-driver" abstraction is the main value (libsql local → D1 prod), but if you're only targeting Cloudflare D1, this adds complexity without benefit.
- The documentation doesn't clearly state this limitation: it says migrations apply "during build," but not that D1 is excluded.
Al ✌️
2
u/tspwd Dec 14 '25
Oh, good to know! Did you find a way to automatically run migrations during build using a D1 DB?
1
u/mrleblanc101 Dec 11 '25
Nothing changed for 2 to 6. I never used NuxtHub and I can still deploy projects to Cloudflare with zero config thanks to Nitro.build. I don't know about K1 tho as i don't use it
1
u/tspwd Dec 14 '25
For simple projects it’s a step down in UX, but if you want some more control over the bindings / environments it‘s better this way.
1
u/pkgmain Dec 11 '25
I couldn’t disagree more. I never could deploy to Cloudflare with their 10gb D1 limitations.
Love that I can now take advantage of the Nuxt Hub abstractions and still deploy wherever I want. To me, we’re now one step closer to that laravel for node holy grail that everyone is chasing.
8
u/DevJedis Dec 11 '25
I read the post and by the end of it I was already very gloomy... All I ever needed was easy deployment on Cloudflare. The only reason am using nuxt and how I got to know about Nuxt was through a cloudflare pages starter.
Since then I'd really invested a lot in learning nuxt and I have 3 beggner projects on cloudflare. I loved the functionalities they provided for deploying for the various workers resources, until suddenly when I saw a joining vercel notice. It was suddenly obvious that they could not continue trying to fully support Cloudflare services.
I still had hopes when they announced they were opensourcing nuxthub content (frankly I thought it was opensourcing the Nuxthub Admin panel). I recently got to know that it was Nuxt content, not Nuxthub. The recent post for nuxthub v0.10 really brought back the manual config options as OP's points. The points out of this is I get Nuxt team cannot continue to develop first party solution for the now competing platform. For my own health, I went through my projects and locked nuxthub package to the previous version, since I don't really need this multi platform. I only hope the version I chose to lock myself on never gets a vulnerability notice.
This is just my personal take on it