Why are some modules implementation restricted to using UI kit?

I am talking here about scenarios like implementing a view renderer for a custom field type module.

per documentations:

Rendering
View mode
Forge apps can provide rendering of the field with UI Kit.

Custom rendering currently can't be implemented using Custom UI or Frame component.

I struggle to understand why this restriction was put in place… Other modules also visible in issue view (issue context or issue panel), allow custom renderers / iframes. Plus, even custom field type allows custom renderers / iframes for edit view.

UI Kit library is extremely basic. Other than using it to display static stuff, you cannot do much. Even customizing its elements is extremely limited.

Supported components
XCSS support is currently available on the Box and Pressable components.

Supported properties
Border
Color
Opacity
Shadow
Size
Layout
Typography
Space

So why this restriction?

Hi @AlinOana ,

The short answer is for performance and scalability reasons. On some screens, there could be lots of custom field renderers on the page (eg. issue list view). Loading a separate iframe in each cell of a multiple columns of a 50 row table would not deliver a good experience.

UI Kit performance scales much better in this scenario.