Web platform features explorer

Scoped custom element registries

The CustomElementRegistry() constructor creates a new custom element registry that's separate from the global window.customElements registry. Creating more than one registry is useful for multiple custom elements that have the same tag name to coexist.

Status

Limited availability

Browser support

  • Chrome 146 Released on 2026-03-10
  • Chrome Android 146 Released on 2026-03-10
  • Edge 146 Released on 2026-03-13
  • Firefox See bugzil.la/1874414 bugzil.la/2018900
  • Firefox for Android
  • Safari 26 Released on 2025-09-15
  • Safari on iOS 26 Released on 2025-09-15

Baseline availability blocked since March 2026 by Firefox (3 months)

Interop

Developer votes

Do you need this feature?
Let us know by leaving a 👍 reaction on the feedback issue. Don't forget to also leave a comment explaining your specific use case.

Developer use cases

  • We're running a micro frontend architecture with parts of the page composed from different teams' apps at runtime. The parts are independently deployed, and isolated today using a declarative shadow DOM boundary. We also have a shared design system with a web components base. Since every part of the micro frontend shares the global custom element registry, to update the design system when there are breaking changes requires a huge coordination effort that scoped custom element registries would solve. We're running a micro frontend architecture with parts of the page composed from different teams' apps at runtime. The parts are independently deployed, and isolated today using a declarative shadow DOM boundary. We also have a shared design system with a web components base. Since every part of the micro frontend shares the global custom element registry, to update the design system when there are breaking changes requires a huge coordination effort that scoped custom element registries would solve. [see original comment]
  • I have the same use case as above at a cross organizational level at Adobe. It's a major headache not having Scoped Custom Element Registries. But also another use case within a single application that can create dependencies in multiple different versions of a design system within the same app for reasons of reproducibility (consistent reproduction of an old ux even though a new version is available). I have the same use case as above at a cross organizational level at Adobe. It's a major headache not having Scoped Custom Element Registries. But also another use case within a single application that can create dependencies in multiple different versions of a design system within the same app for reasons of reproducibility (consistent reproduction of an old ux even though a new version is available). [see original comment]