Backstage just untethered its default CSS from the framework — and if you upgrade blindly, your portal will look like a broken Material-UI experiment.
The single change that will bite the most teams is the removal of the built-in CssBaseline from UnifiedThemeProvider. That sounds minor until you realise every existing Backstage app that relied on implicit global styles will render without basic resets unless you add a single import: @backstage/core-components/styles.css. This is the kind of release-note nitpick that becomes a Friday-morning outage for platform teams who run rolling upgrades across dozens of micro-frontends.
What changed and why it matters
Backstage 1.44.0 rewires the UI stack: the UnifiedThemeProvider no longer injects a global CssBaseline. The intent is sensible — make styling explicit, reduce implicit global side effects, and move teams toward Backstage UI primitives — but the outcome is a hard compatibility break for portals that never imported the shared CSS directly.
Fix is trivial in code but painful at upgrade time. Add this at the top-level of your app (for example in packages/app/src/App.tsx):
import '@backstage/core-components/styles.css';Do that before you update and your UI will survive the transition. If you skip it, typography, resets, and some layout helpers will behave as if MUI vanished overnight.
The CLI entrypoint and multi-app hygiene
The release also introduces a new --entrypoint option for backstage-cli package:start. That's overdue and important for anyone running multi-app Backstage deployments or experimenting with multiple dev entrypoints in a mono-repo. Instead of hacking package.json scripts or copying entry files, you can now point package:start at a custom directory for a development app:
yarn backstage-cli package:start --entrypoint=packages/my-custom-entryThis makes local dev and CI-friendly builds more predictable and helps enforce clearer boundaries between internal apps. In short: the tooling finally acknowledges that large orgs don't run one app per repo.
Themer — helpful, but not a silver bullet
Backstage ships a new Themer plugin to ease migrations from raw Material-UI to Backstage UI components. It's a practical migration aid: mapping tokens, providing shim components, and offering a guided path to replace Material variants. But be blunt — Themer won't save you from bespoke component libraries or deep, CSS-in-JS hacks. It's a migration accelerator for teams that followed Backstage patterns, not a conversion tool for Frankenstein frontends.
Vendor and ecosystem moves
Some vendors, such as Digital.ai, have updated Backstage plugins and UI component integrations that surface releases, workflow catalogs, filtering, and links back to repository versions — useful for making release engineering visible inside the portal instead of in a separate dashboard.
Also worth noting: community guidance like “The Hitchhiker's Guide To Upgrading Backstage” is maturing into practical, repeatable upgrade hygiene: use backstage-cli version checks, run nightly builds of targeted packages, and review changelogs carefully. That discipline matters more now that seemingly minor UI changes can cascade into cross-team incidents.
Opinion: the right move, with execution risk
Removing implicit global CSS is the right API design decision. Implicit resets are leaky abstractions that hurt long-term maintainability. The problem is rollout: this should have been flagged as a high-risk breaking change in release notes and surfaced by tooling (lint/plugin checks) that detect missing imports. Platform teams need automated upgrade gates — nightly smoke builds against your portal and tests that assert layout primitives render.
Final thought
Backstage is maturing from a DIY portal scaffold into an opinionated platform with clearer contracts. That’s good — but it also means upgrades will demand platform-owned automation and golden-paths that catch small API churn before it becomes a site-wide styling incident. If your Backstage upgrade plan is still a manual checklist, this release should change that.
Sources
- Backstage v1.44.0 drops, and many plugins have new features added (Backstage Weekly)
- Using the Release Plugin in Backstage - Digital.ai Release Backstage UI Components
- The Hitchhiker's Guide To Upgrading Backstage: Don't Panic! (Harness talk)
- Backstage Release & Versioning Policy
- Backstage Releases (GitHub)