Restrict app creation to admins

Description of the limitation and why it is relevant to address

As an Admin, I would like to control who creates an app for production so I’m able to control the published app.

We have quite a strict quality system before an app should be published to production. Now Any dev can create an app (thankfully not a workspace). As soon that happened any user can be triggered to ask for a workspace for that, which leads to an unnecessary maintenance burden for the admins. Also now our apps overview is polluted with apps that I don’t want to have here.

I am actually very surprised that any dev can create an app.

We are now in the situation that a junior developer has created an app that is not intended to be in production and I am not able to fix this. (Apps cannot be removed so: Be able to remove an app - :bulb: Feature Requests - VIKTOR Community)

Hi Wichard,

Thank you for describing this limitation. In my opinion we are currently missing a ‘draft’ or ‘in-development’ state for apps. I understand that you would like to have controls before flagging an app as production-ready. Currently, you would be able to use the labels to indicate that an app is not production-ready yet.

However, in my opinion it is also very valuable for a developer to be able to test the application or gather feedback from users during the development process. Now this requires an administrator to set up a workspace and add users specifically for testing purposes, which can become a bottleneck when the number of developers grows. So restricting workspace creation to admins is also not an ideal solution.

I think it could be valuable to have an intermediate state where a developer is able create a ‘draft’ app, publish versions and add users for testing. Upon completion this app could then be ‘approved’ by an admin to make it available in the app store for users to see and request access to it. Do you think a flow like this could work?

I’m uncertain if that approach is effective. We’ve observed instances where individuals create apps simply because there’s a button available, and they’d like to explore this further. As an administrator, I strongly advocate for the functionality for admins to remove apps in such cases.

We maintain a strict approach, so I propose making this functionality configurable at the company level. This way, we can carefully decide which permissions to grant.

Additionally, if we adopt your proposal, I recommend that ‘draft’ apps remain hidden from users in the ‘apps’ overview. This prevents unnecessary requests for access. As you mentioned, our current practice involves labeling apps as ‘obsolete’ or ‘in development.’

I understand, we are planning to implement an archiving functionality similar to what admins can do for workspaces.

Could elaborate what specifically you would like to control? Or what is most important to have controls for in your opinion?

Do you think it could be valuable for users to see which apps are being developed? I can imagine it could spark some interest in new developments.