Are custom fields back for real?

I am trying to get a bit more understanding of the Forge architecture and best practices on app design with regards to custom fields.

I believe back in Jira Server/DC land it was a thing to provide custom fields with your Jira plugin. As I understand your Jira plugin could render any UI for your custom field and there were/are customers with 1000s of custom fields. This resulted in two kinds of performance issues:

  1. Jira issue view that potentially started to render slowly
  2. General Jira performance issues because of too many custom fields [1][2]

In Atlassian Connect land there was no direct support for custom fields anymore, however, we got issue fields instead[3]. They allowed app vendors to declare only Atlassian-predefined custom field types. Atlassian Connect remote issue fields brought back the “render any UI” approach but those got discontinued before they found their way into apps (because of rendering performance issues of the “old issue view” I assume?). Over time, I got the impression that issue fields (or custom fields for that matter) were not really pushed or encouraged as an app design pattern by Atlassian (maybe I am wrong with this?).

After playing with Forge for a while, I got the feeling custom fields are back in full force including custom rendering options. This made me wonder if the performance concerns with custom fields are now obsolete? What are the reasons custom fields are back? Is it the new issue view that isolates potentially slow rendering app custom fields from the core Jira issue view?

I am trying to understand the general performance implications of Forge custom fields on Jira and how they affect future app design patterns.

I would be happy to hear other’s insights or thoughts on this.

5 Likes

Thanks @tbinna for sharing your thoughts about this topic.

We would love to develop a cloud version of one of our product (File Field: File Field | Attachment & Document Field | Atlassian Marketplace), lots of customers ask for that, but we are currently stuck with current limitations of custom fields for cloud.

The possibility to have your own custom rendering option in Forge looks promising. I have checked the example project provided by Atlassian (Bitbucket) and some questions popped into my mind:

  • is it possible to use other components than the standard ones provided by UI Forge ?
  • is it possible to customize the editor of the customfield? It does not seem to be the case (yet, at least).

Thanks again to have open this topic. I hope that other developers with similar questions will also share their tips and opinions.

Enjoy your day, Cheers

1 Like

Custom fields are back! We want to make them great again;) :blush: :rocket: :muscle: :wink:

We have finished recently work on custom filed types, custom field object type, context configuration extension point, support for Forge custom fields on create issue view, and other smaller improvements. A few other improvements are on the roadmap but not yet scheduled. Coming back to your questions.

  1. Jira issue view that potentially started to render slowly

Forge custom fields are loaded asynchronously they don’t impact the issue view loading time.
Nevertheless, we are motivated to make them faster that’s is why we have:

  1. introduced formatter which is the faster way to reader Forge Custom fields on all views
  2. we have ongoing research on performance improvements for UI Kit
  3. on September 6 we plan to release support for Custom UI in Custom Filed edit

General Jira performance issues because of too many custom fields

Jira Cloud architecture differs from the Jira server. (no indexing etc, no iframes for custom fields view) Thanks to this some performances issues are now obsolete. Performance impact is generally lower and different yet still exists. We have to finish the ongoing research to share more details.

6 Likes