Apps Management

Overview

The Apps Management screen is the central hub for managing all applications in your Axelor instance — both standard applications (delivered with the platform) and custom applications (created through Studio Apps). It provides install, uninstall, configure, and data import capabilities.

Apps Management is accessed from Administration > Apps management.

Apps Management cards view

Custom Studio Apps appear in this list only when their Show in app view (isInAppView) property is enabled. See Studio Apps for details.

App Views

Cards View

The default view displays apps as cards with visual type badges:

Badge Color App Type

Blue

Standard

Orange

Addons

Brown

Enterprise

Red

Pro

Purple

Custom

Gray

Others

Each card shows the app image, name, code, description, and current status (installed or not).

Available buttons on each card:

  • Install — Installs the app (shown when not active)

  • Configure — Opens the app-specific configuration form (shown when active)

  • Export — Exports the app (shown when active, for Studio Apps only)

  • Uninstall — Uninstalls the app (shown when active)

  • Delete — Deletes the app (shown when not active, for Studio Apps only)

The cards toolbar provides:

  • Bulk install — Install multiple apps at once

  • Import roles — Import roles for all installed apps

Grid View

The grid view displays apps in a tabular format with columns: name, active status, demo data loaded, type, and version.

The grid and form are read-only for app creation and deletion (canDelete=false, canNew=false). App records are managed through install/uninstall operations.

Form View

App Management form view

The form view provides:

  • App image, name, and language selector

  • Demo data loaded status

  • Type and version badges

  • Description (large text)

  • Dependencies panel (dependsOnSet) showing required apps

Install and Uninstall

Installing an App

Click Install on the app card or in the form sidebar. A confirmation dialog appears before proceeding.

The installation process:

  1. Resolves dependencies (installs required apps first)

  2. Loads initial data for the app

  3. Registers menus, views, and actions

  4. Marks the app as active

Uninstalling an App

Click Uninstall on the app card or in the form sidebar. A confirmation dialog appears before proceeding.

Uninstalling an app deactivates its menus, views, and actions. Data created through the app remains in the database but becomes inaccessible through the UI.

Configure

The Configure button opens the app-specific configuration form. Each app type has its own configuration entity and form:

  • StudioAppStudio configuration (see Configuration)

  • BPMAppBpm configuration

  • Other apps may have their own configuration forms

The Configure button is only available when the app is installed (active).

Bulk Install

The Bulk install button in the cards toolbar opens a dialog for installing multiple apps at once:

Bulk install dialog
Field Description

Apps

Select multiple apps to install (M2M selector)

Language

Language for the installed apps (selection: select.language)

Import demo data

When checked, demo data is imported during installation

Click Install in the dialog to start the bulk installation process.

Demo Data Import

The Import demo data button imports sample/reference data for the app. This is useful for testing and evaluation purposes.

Demo data import is only available in non-production environments (application.mode != 'prod'). This button is hidden in production mode.

Roles Import

Two options for importing application roles:

  • Import roles (form sidebar) — Imports roles for the current app

  • Import roles (cards toolbar) — Imports roles for all installed apps

Role import loads predefined role and permission configurations associated with the app.

Technical Details

Apps are stored in the App entity (com.axelor.studio.db):

Field Type Description

name

String (required)

Display name (translatable)

code

String (required, unique)

Technical identifier

active

Boolean

Whether the app is currently installed

typeSelect

String (selection)

App type: standard, addons, enterprise, pro, custom, others

appVersion

String

Application version

isCustom

Boolean

Whether created through Studio

isExperimental

Boolean

Marks experimental apps

languageSelect

String (selection)

Preferred language

initDataLoaded

Boolean

Whether initial data has been loaded

demoDataLoaded

Boolean

Whether demo data has been loaded

isRolesImported

Boolean

Whether roles have been imported

dependsOnSet

M2M: App (self-referencing)

Required dependencies

installOrder

Integer

Installation priority order

isInAppView

Boolean

Whether to show in Apps Management (for custom apps)

The domain filter for the Apps Management view:

self.isCustom = null OR self.isCustom = false OR (self.isCustom = true AND self.isInAppView = true)

This ensures only standard apps and custom apps with isInAppView=true are displayed.

Key backend services:

  • AppController.installApp() — Installs the app with dependency resolution

  • AppController.uninstallApp() — Uninstalls the app

  • AppController.configure() — Opens the app-specific configuration form

  • AppController.importDataDemo() — Imports demo data (non-prod only)

  • AppController.bulkInstall() — Installs multiple apps

  • AppController.importRoles() / importAllRoles() — Imports role configurations