umbraco-umbraco-element

Generate TypeScript Umbraco Elements using UmbElementMixin or UmbLitElement.

1|Updated May 21, 2026
One-click install
npx skills add https://github.com/1k-off/umbraco-observability-playground --skill umbraco-umbraco-element-1k-off
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: umbraco-umbraco-element
Source: https://github.com/1k-off/umbraco-observability-playground/tree/main/.agents/skills/umbraco-umbraco-element
Command: npx skills add https://github.com/1k-off/umbraco-observability-playground --skill umbraco-umbraco-element-1k-off

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

It solves the challenge of integrating custom web components into the Umbraco Backoffice by providing the right foundation for consuming/providing context, reacting to observable state, and leveraging localization and controllers.

Core Features & Use Cases

  • UmbElementMixin / UmbLitElement: Implement Backoffice-ready Umbraco Elements as Web Components using the official mixin patterns.
  • Context API integration: Use consumeContext() and provideContext() to wire elements into the Backoffice context graph.
  • State observation & localization: Reactively update UI via observe() and localize UI strings via the built-in localize controller, optionally hosting controllers via hostController().

Quick Start

Ask the agent to implement a new Umbraco Element using UmbLitElement and demonstrate consuming a Backoffice context, localizing a label, and updating UI from observed state.

Frequently Asked Questions about umbraco-umbraco-element

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I build custom web components for the Umbraco Backoffice using TypeScript?

To build custom web components for the Umbraco Backoffice, use the UmbElementMixin or UmbLitElement patterns to create TypeScript elements that integrate with core Backoffice capabilities like context consumption and reactive state.

How does the Context API work when integrating Umbraco Elements?

The Context API in Umbraco Elements works by using consumeContext() and provideContext() methods to wire your custom web components into the Backoffice context graph, allowing data sharing and state management across the UI hierarchy.

What's the best way to localize UI strings in an Umbraco Backoffice extension?

The best way to localize UI strings in an Umbraco Backoffice extension is to use the built-in localize controller provided by UmbLitElement, which automatically handles translations within your custom web components.

Can I use Lit to create reactive state observations in Umbraco Elements?

Yes, you can use Lit to create reactive state observations in Umbraco Elements by utilizing the observe() method, which reactively updates the UI when observable state changes occur in the Backoffice context.

Do I need to host controllers manually when building Umbraco Backoffice components?

When building Umbraco Backoffice components, you can optionally host controllers via the hostController() method, which manages controller lifecycle and cleanup within your UmbElementMixin or UmbLitElement implementation.

Why should I use UmbElementMixin instead of standard Lit elements for Umbraco?

UmbElementMixin should be used instead of standard Lit elements because it provides official Backoffice-ready foundation methods, enabling seamless integration with context, observable state, localization, and controller hosting APIs specific to Umbraco.