This content originally appeared on DEV Community and was authored by Ezhil Sivaraj SR
Disclaimer
- This is a random rant by a junior dev who experienced hell with azure so don’t come to conclusion.
- If You have any POV on my rant leave it in the comments definitely i will take your view.
Intro: Drop & Deploy? More Like Drop & Die
I built a static web app. A beautiful React-Router v7 (Remix based) app with SSR. What I wanted was simple — something like Netlify, Vercel, or even AWS Amplify. Just drag, drop, and deploy. Clean. Simple. Painless.
Then I met Microsoft Azure Static Web Apps — and my life started flashing before my eyes.
At first I thought, “Hey, Microsoft’s been doing this cloud thing for a while. Maybe they’ve figured out a nice flow.”
But Microsoft — bless their clueless hearts — said:
“Hmm, we are Microsoft. We always suck. Let’s make deployment feel like debugging in production… blindfolded.”
1. No Support for Remix? Because Microsoft Can’t Be Bothered
Let’s address the elephant in the package.json: Remix — a proper React framework with excellent SSR support — is completely ignored by Azure.
Where’s the preset mode for Remix like the one Azure provides for Angular, Vue, Gatsby, Next.js, Svelte, Hugo, Jekeyll, Nuxt, Blazor etc.?
Oh, there isn’t one. Because Remix isn’t “cool enough” to be given a preset — not by Azure’s internal “blessed frameworks” club.
Leave Blazor its microsoft own stuffs
And fine — you’re forcing me to use Azure Functions for SSR. Cool. Then where the hell is the wrapper library for Remix?
Actually there is one from @scandinavianairlines/remix-azure-functions
but is not working properly i don’t know why, but yeah i am trying to build on my own
Microsoft thinks “static” equals “Next.js.” Nothing else matters. Not even the fact that Remix is open-source, React-based, and used by real teams in production.
And this isn’t just incompetence — it’s negligence. Remix is open-source, React-based, and being used in enterprise apps. But Microsoft still treats it like an exotic stack nobody asked for.
This isn’t developer tooling.
This is a clique — and if you’re not in the cool kid circle, you’re left to rot in documentation hell.
2. SSR/SSG with Azure Static Web Apps? LMAO No.
Netlify: Just mark a route for SSR.
Vercel: Just export getServerSideProps.
Azure: “Write a function. Yes, an actual Azure Function with HTTP trigger. For your SSR. And wire it to your static site manually.”
Let me get this straight.
I want to serve a blog, not launch a satellite. But Microsoft goes:
“Hmm. We suck better when you suffer more. Please spin up a managed function to serve your homepage.”
Why?
Why the actual f**k would a static asset be routed through a serverless function? You know what’s faster than that? Literally anything. A potato with a USB stick.
And then the punchline hits:
“Don’t worry. It’s behind a CDN.” – Microsoft, doing PR damage control
Oh, wow! Thanks! So now it’s a slow function and a CDN mystery box. Very cool.
3. Azure CLI & Local Testing – The Great Gaslight
Okay, fine. Let’s run it locally and test it.
I fire up Azure CLI, hit swa start and try to run my Remix build.
Does it behave like production?
“Hmm, we’re Microsoft. We always suck. Our CLI is only for decoration.”
Nothing matches.
Routing fails.
API proxies break.
Your managed function doesn’t even start unless you give it a sacrifice and half your CPU.
What the hell is this platform?
Even Firebase Hosting does better — and that shit is older than Stack Overflow.
4. Pricing – You Pay for the Abuse
Now let’s talk cost.
You think: “Oh, it’s just a static web app, this should be free or cheap, right?”
Nope.
Microsoft be like:
“Hmm, we suck your wallet too. Enjoy charges for:
- Function executions
- Bandwidth
- Storage
- Your will to live” Meanwhile, others give you:
- Free tier that actually works
- Preview deployments that don’t randomly break
- Functions that aren’t tied to Azure’s flavor of the month
Azure? You’ll be debugging why your cost spiked and why your function deployed without logs at the same time. God help you if you’re running an open-source project with limited budget.
5. Reliability? What’s That?
Let’s say, by some miracle, you get your Remix site deployed. It works! For a while.
Then the 6th commit rolls in.
“Hmm, we are Microsoft. We suck your source control too. Let’s silently corrupt your deployment!”
Poof. It’s gone. No logs. No rollback. Just broken deployments and a message: “Resource unavailable.”
Now let me tell you my own personal hell:
The first time I tried deploying, Azure yelled at me with a tsc build error. Confused, I popped the hood to see what was happening. Turns out the error came from an internal dependency: @azure/functions — a library that Microsoft themselves maintain. Sounds promising, right?
So I added a custom build step to ensure it was properly installed. That’s when the real shitshow began.
Boom.
“Package not found on npm.”
Yes, a Microsoft-managed library… wasn’t even on the registry at that moment. You heard that right — the official function library used by their entire static app ecosystem… gone. Vanished. Poof. 404’d into oblivion.
I tried again. Different setup. Same result. And eventually?
The entire Static Web App resource got corrupted. Deployment wasn’t just failing — the whole Azure resource was now broken. Unusable. Bricked like a bootlooping Android phone.
You think I’m exaggerating? Go ahead and try it. Make six commits to your working Remix project and watch it fall apart.
So now, guess what?
I had to recreate the Static Web App resource from scratch, update my CI, fix the repo permissions, and start over — all because Microsoft can’t even maintain their own deployment infra.
I don’t even have words for this. You know what works better? GitHub Pages.
I pray for Microsoft Azure’s slow and public demise. Not because I hate Microsoft — but because they clearly hate developers.
6. Real Dev Confessions
I’ve seen real developers ask:
- “Why is Azure Static Web App not picking my SSR route?”
- “Why does it break after pushing a commit?”
- “Why does it only work if I use VS Code and deploy from there?”
Answer:
Because Microsoft only wants you to use Microsoft tools with Microsoft defaults while worshiping the shrine of Satya in Visual Studio.
Even the error messages are passive-aggressive:
“Your build failed.”
“Where?”
“Yes.”
A Side Note: Vercel’s Quiet Monopoly
Funny how Microsoft only supports frameworks touched by Vercel.
Next.js? First-class support.
Svelte? Funded by vercel.
Nuxt.js? Merged with Vercel.
HUGO? Microsoft is closely working with Go.
Jekeyll? Works with Nitro underthehood – (Nitro funded by Vercel).
Remix? Dead to them.
Astro? Don’t even ask.
Makes you wonder — is the frontend world slowly being eaten alive by one player?
Or its just me felt like this with wrong intension
We’ll talk about that how open source is being turned into a walled garden in the next blog.
Final Words: Azure Static Web Apps Shouldn’t Exist
Microsoft had a chance.
They could’ve built a great alternative to Vercel and Netlify.
Instead, they built a bloated, poorly documented, slow-as-f**k platform that punishes you for trying to do anything non-Next.js.
“We are Microsoft. We always suck. But this time, we suck harder.”
My suggestion
Please, if you’re a junior dev: stay the hell away from Azure Static Web Apps.
DANGER AHEAD
Use Cloudflare, Vercel, Netlify, or even bare metal hosting. Anything but this.
I genuinely hope Microsoft kills Azure Static Web Apps and starts over — or at least admits they don’t care about frontend devs.
Because if this is the future of frontend cloud hosting…
Lets go for some other work.
This content originally appeared on DEV Community and was authored by Ezhil Sivaraj SR