--- src/app/app.component.ts
+++ src/app/app.component.ts
@@ -14,8 +14,10 @@ import { LgmcAppConfigManager } from 'src/shared/lgmc-platform/lgmc-platform-app
 import { MnSystem, MnUser } from 'src/shared/lgmc-api-artifacts/src/models';
 import { LgmcGuiSerqNotificationsService } from 'src/shared/lgmc-gui/lgmc-gui-serq/services/lgmc-gui-serq-notifications.service';
 import { Router } from '@angular/router';
-import {TranslateService} from '@ngx-translate/core';
-import {PrimeNGConfig} from 'primeng/api';
+import { TranslateService } from '@ngx-translate/core';
+import { PrimeNGConfig } from 'primeng/api';
+
+import { combineLatest } from 'rxjs';
 
 /**
  * Main Logimic app component which inistializes state.
@@ -68,32 +70,26 @@ export class AppComponent implements OnInit {
     private primeNGConfig: PrimeNGConfig
   ) {
 
-      this.appStateService.appConfig.subscribe((appConfig) => {
+      this.appStateService.mergedAppConfig.subscribe((appConfig) => {
         this.appConfig = appConfig;
       });
 
       // listen to the state app state change
       this.appStateService.appInitialized.subscribe((appInitialized: boolean) => {
         // async call due to Angular NG0100 error - https://angular.io/errors/NG0100
-        setTimeout(() => {
-          this.appInitialized = appInitialized;
-        }, 0);
+        setTimeout(() => {this.appInitialized = appInitialized}, 0);
       });
 
       // listen to the loading data flag state change
       this.appStateService.loading.subscribe((isLoading: boolean) => {
         // async call due to Angular NG0100 error - https://angular.io/errors/NG0100
-        setTimeout(() => {
-          this.isLoading = isLoading;
-        }, 0);
+        setTimeout(() => {this.isLoading = isLoading}, 0);
       });
 
       // listen to the hybrid flag change
       this.appStateService.hybrid.subscribe((hybrid: boolean) => {
         // async call due to Angular NG0100 error - https://angular.io/errors/NG0100
-        setTimeout(() => {
-          this.isHybrid = hybrid;
-        }, 0);
+        setTimeout(() => {this.isHybrid = hybrid}, 0);
       });
 
       // listen to the current user change
@@ -102,13 +98,8 @@ export class AppComponent implements OnInit {
       });
 
       // listen to the user avatar change
-      this.appStateService.userAvatar.subscribe((userAvatar: string) => {
-        if (this.appConfig?.layout.useAvatar == false) {
-          this.userAvatar = '';
-        } else {
-          this.userAvatar = userAvatar;
-        }
-
+      combineLatest([this.appStateService.userAvatar, this.appStateService.mergedAppConfig]).subscribe(([userAvatar, appConfig]) => {
+        this.userAvatar = appConfig?.layout?.useAvatar ? userAvatar : '';
       });
 
       this.appStateService.toolbarClicked.subscribe((toolbarClicked: boolean) => {
@@ -128,9 +119,7 @@ export class AppComponent implements OnInit {
       // navigation enabled
       this.appStateService.navigationEnabled.subscribe((enabled: boolean) => {
         // async call due to Angular NG0100 error - https://angular.io/errors/NG0100
-        setTimeout(() => {
-          this.navigationEnabled = enabled;
-        }, 0);
+        setTimeout(() => {this.navigationEnabled = enabled}, 0);
       });
 
       // navigation items
--- src/app/app.module.ts
+++ src/app/app.module.ts
@@ -49,12 +49,10 @@ import { LgmcPlatformUtilsModule } from 'src/shared/lgmc-platform/lgmc-platform-
 
 // Shared graphics
 import { LgmcGBreadcrumbModule } from 'src/shared/lgmc-g/lgmc-g-breadcrumb/lgmc-g-breadcrumb.module';
-import { LgmcGHeaderModule } from 'src/shared/lgmc-g/lgmc-g-header/lgmc-g-header.module';
 import { LgmcGNavbarModule } from 'src/shared/lgmc-g/lgmc-g-navbar/lgmc-g-navbar.module';
 import { LgmcGNotFoundModule } from 'src/shared/lgmc-g/lgmc-g-not-found/lgmc-g-not-found.module';
 import { LgmcGProgressModule } from 'src/shared/lgmc-g/lgmc-g-progress/lgmc-g-progress.module';
 import { LgmcGMobileBottomNavbarModule } from 'src/shared/lgmc-g/lgmc-g-mobile-bottom-navbar/lgmc-g-mobile-bottom-navbar.module';
-import { LgmcGMobileLogoHeaderModule } from 'src/shared/lgmc-g/lgmc-g-mobile-logo-header/lgmc-g-mobile-logo-header.module';
 
 // Shared GUI
 import { LgmcGuiAdminModule } from 'src/shared/lgmc-gui/lgmc-gui-admin/lgmc-gui-admin.module';
@@ -106,12 +104,10 @@ import { IonicModule } from '@ionic/angular';
     CommonModule,
     FormsModule,
     LgmcGBreadcrumbModule,
-    LgmcGHeaderModule,
     LgmcGNavbarModule,
     LgmcGNotFoundModule,
     LgmcGProgressModule,
     LgmcGMobileBottomNavbarModule,
-    LgmcGMobileLogoHeaderModule,
     LgmcGuiAdminModule,
     LgmcGuiCommandsModule,
     LgmcGuiCredentialsModule,
--- src/config/api.config.ts
+++ src/config/api.config.ts
@@ -6,6 +6,7 @@ import { LgmcApiConfig } from "src/shared/lgmc-platform/lgmc-platform-model/lgmc
  * Override by the target app.
  */
 export const apiConfig: LgmcApiConfig = {
+  appId: 1,
   connName: "",
   connNameRah: "",
   region: "",
--- src/config/app.config.ts
+++ src/config/app.config.ts
@@ -16,6 +16,7 @@ import { stylesConfig } from "./styles.config";
 import { timeFormatConfig } from "./timeFormat.config";
 import { unitsConfig } from "./units.config";
 import { weekStartConfig } from "./weekStart.config";
+import { appMetamodel } from "./meta/app.metamodel";
 
 /**
  * App global config
@@ -37,4 +38,6 @@ export const appConfig: LgmcAppConfig = {
   timeFormat: timeFormatConfig,
   units: unitsConfig,
   weekStart: weekStartConfig,
+
+  metamodel: appMetamodel
 };
--- src/config/lang.config.ts
+++ src/config/lang.config.ts
@@ -9,7 +9,6 @@ import { LgmcLangAssetsConfig, LgmcLangConfig } from "src/shared/lgmc-platform/l
  * Important! Do not forget to export the paths in angular.json!
  */
 export const langAssetsConfig: LgmcLangAssetsConfig = [
-  './assets/lgmc-g-header/i18n/',
   './assets/lgmc-g-not-found/i18n/',
   './assets/lgmc-gui-admin/i18n/',
   './assets/lgmc-gui-aut-report/i18n/',
--- src/config/modules/admin.config.ts
+++ src/config/modules/admin.config.ts
@@ -181,7 +181,7 @@ export const adminModuleConfig: LgmcGuiAdminConfig = {
     programsModuleConfig.pages.programs,
     notifyModuleConfig.pages.notify,
     autReportModuleConfig.pages.autReport,
-    //configsModuleConfig.pages.configs,
+    configsModuleConfig.pages.configs,
     sqlModuleConfig.pages.home,
     loggerModuleConfig.pages.logger,
     devReplaceModuleConfig.pages.main,
--- src/config/modules/configs.config.ts
+++ src/config/modules/configs.config.ts
@@ -1,9 +1,7 @@
 import { LgmcGuiConfigsComponent } from "src/shared/lgmc-gui/lgmc-gui-configs/components/lgmc-gui-configs/lgmc-gui-configs.component";
+import { lgmcGuiConfigsMetaConfig } from "src/shared/lgmc-gui/lgmc-gui-configs/model/lgmc-gui-configs.metamodel";
 import { LgmcGuiConfigsConfig, lgmcGuiConfigsModuleId } from "src/shared/lgmc-gui/lgmc-gui-configs/model/lgmc-gui-configs.model";
-import { LgmcGuiConfigsDetailComponent } from "src/shared/lgmc-gui/lgmc-gui-configs/components/lgmc-gui-configs-detail/lgmc-gui-configs-detail.component";
-import { LgmcGuiConfigsModulesListComponent } from "src/shared/lgmc-gui/lgmc-gui-configs/components/lgmc-gui-configs-modules-list/lgmc-gui-configs-modules-list.component";
 
-import { LgmcGuiConfigsRouterComponent } from "src/shared/lgmc-gui/lgmc-gui-configs/components/lgmc-gui-configs-router/lgmc-gui-configs-router.component";
 import { LgmcPlatformAccessGuard } from "src/shared/lgmc-platform/lgmc-platform-access/guards/lgmc-platform-access.guard";
 
 /**
@@ -12,45 +10,29 @@ import { LgmcPlatformAccessGuard } from "src/shared/lgmc-platform/lgmc-platform-
 export const configsModuleConfig: LgmcGuiConfigsConfig = {
   id: lgmcGuiConfigsModuleId,
   enabled: true,
+
+  globalConfigScopeAccessForm: "gui/admin/configs/global",
+  implicitMetamodelAccessForm: "gui/admin/configs/all",
+
+  fallbackBreadCrumbIcon: "pi pi-list",
+  timedLockDuration: 30,
+
   pages: {
     configs: {
       path: 'admin/configs',
       component: LgmcGuiConfigsComponent,
       canActivate: [LgmcPlatformAccessGuard],
       label: "lgmc-gui-configs.configs.configs",
-      icon: "pi pi-briefcase",
-      accessForm: "gui/admin/configs",
-    },
-    details: {
-      path: 'admin/configs/:id',
-      component: LgmcGuiConfigsDetailComponent,
-      canActivate: [LgmcPlatformAccessGuard],
-      accessForm: "gui/admin/configs/:id",
-      label: "lgmc-gui-configs.detail.detail",
-      icon: "pi pi-list",
-      children: [
-        {
-          path: '**',
-          component: LgmcGuiConfigsDetailComponent,
-        }
-      ]
-    },
-    modulesConfig: {
-      path: 'admin/configs/modules',
-      component: LgmcGuiConfigsModulesListComponent,
-      canActivate: [LgmcPlatformAccessGuard],
-      label: "lgmc-gui-configs.modules.modules",
-      icon: "pi pi-briefcase",
-      accessForm: "gui/admin/configs",
-    },
-    routerConfig: {
-      path: 'admin/configs/router',
-      component: LgmcGuiConfigsRouterComponent,
-      canActivate: [LgmcPlatformAccessGuard],
-      label: "lgmc-gui-configs.configs.router",
-      icon: "pi pi-briefcase",
+      icon: "pi pi-cog",
       accessForm: "gui/admin/configs",
+
+      children: [{
+        path: '**',
+        component: LgmcGuiConfigsComponent,
+      }]
     },
-  }
+  },
+
+  metamodel: lgmcGuiConfigsMetaConfig
 };
 
--- src/config/modules/dashboard.config.ts
+++ src/config/modules/dashboard.config.ts
@@ -1,4 +1,5 @@
 import { LgmcGuiDashboardComponent } from "src/shared/lgmc-gui/lgmc-gui-dashboard/components/lgmc-gui-dashboard/lgmc-gui-dashboard.component";
+import { lgmcGuiDashboardMetaConfig } from "src/shared/lgmc-gui/lgmc-gui-dashboard/model/lgmc-gui-dashboard.metamodel";
 import { LgmcGuiDashboardConfig, lgmcGuiDashboardModuleId } from "src/shared/lgmc-gui/lgmc-gui-dashboard/model/lgmc-gui-dashboard.model";
 import { LgmcGuiKpiDashboardProviderService } from "src/shared/lgmc-gui/lgmc-gui-kpi/services/lgmc-gui-kpi-dashboard-provider.service";
 import { LgmcGuiRahDashboardProviderService } from "src/shared/lgmc-gui/lgmc-gui-rah/services/lgmc-gui-rah-dashboard-provider.service";
@@ -39,8 +40,11 @@ export const dashboardModuleConfig: LgmcGuiDashboardConfig = {
       isDisplayNodePanel: false,
       paginateNum: 0,
       displayOn: LgmcDisplayOn.ALL,
-      enableTextOverImage: false
+      enableTextOverImage: false,
 
+      gridWidgets: []
     }
-  }
+  },
+
+  metamodel: lgmcGuiDashboardMetaConfig
 };
--- src/config/modules/dev-params.config.ts
+++ src/config/modules/dev-params.config.ts
@@ -1,4 +1,5 @@
 import { LgmcGuiDevParamComponent } from "src/shared/lgmc-gui/lgmc-gui-dev-param/components/lgmc-gui-dev-param/lgmc-gui-dev-param.component";
+import { lgmcGuiDevParamMetaConfig } from "src/shared/lgmc-gui/lgmc-gui-dev-param/model/lgmc-gui-dev-param.metamodel";
 import { LgmcGuiDevParamConfig, lgmcGuiDevParamModuleId } from "src/shared/lgmc-gui/lgmc-gui-dev-param/model/lgmc-gui-dev-param.model";
 import { LgmcPlatformAccessGuard } from "src/shared/lgmc-platform/lgmc-platform-access/guards/lgmc-platform-access.guard";
 
@@ -17,5 +18,7 @@ export const devParamModuleConfig: LgmcGuiDevParamConfig = {
       icon: 'pi-list',
       accessForm: "gui/devices/parameters/:id"
     }
-  }
+  },
+
+  metamodel: lgmcGuiDevParamMetaConfig
 };
\ No newline at end of file
--- src/config/modules/kpi.config.ts
+++ src/config/modules/kpi.config.ts
@@ -66,6 +66,7 @@ export const kpiModuleConfig: LgmcGuiKpiConfig = {
   providers: {
     dashboard: {
       sgCard: {
+        id: 'kpi-sgCard',
         enabled: true,
         title: "lgmc-gui-kpi.dashboard-card.supergroups.title",
         description: "lgmc-gui-kpi.dashboard-card.supergroups.description",
@@ -74,6 +75,7 @@ export const kpiModuleConfig: LgmcGuiKpiConfig = {
         dropdownAllLabel: "lgmc-gui-kpi.dashboard-card.supergroups.dropdownAll"
       },
       kpiCard: {
+        id: 'kpi-kpiCard',
         enabled: true,
         title: "lgmc-gui-kpi.dashboard-card.summary.title",
         description: "lgmc-gui-kpi.dashboard-card.summary.description",
@@ -83,6 +85,7 @@ export const kpiModuleConfig: LgmcGuiKpiConfig = {
         iconColor: "#f57c00"
       },
       kpiIndicators: {
+        id: 'kpi-kpiIndicators',
         enabled: true,
         unknownDeviceImage: '/assets/lgmc-g/images/unknown-150.png'
       },
--- src/config/modules/rah.config.ts
+++ src/config/modules/rah.config.ts
@@ -44,6 +44,7 @@ export const rahModuleConfig: LgmcGuiRahConfig = {
   providers: {
     dashboard: {
       card: {
+        id: 'rah-card',
         enabled: true,
         title: "lgmc-gui-rah.dashboard-card.title",
         description: "lgmc-gui-rah.dashboard-card.description",
@@ -53,6 +54,7 @@ export const rahModuleConfig: LgmcGuiRahConfig = {
         iconColor: "#f57c00"
       },
       indicator: {
+        id: 'rah-indicator',
         enabled: true,
         image: "/assets/images/lgmc-g-rah/icons/icon-128x128-gray.png",
         title: "lgmc-gui-rah.dashboard-indicator.title",
--- src/config/modules/serq.config.ts
+++ src/config/modules/serq.config.ts
@@ -76,6 +76,7 @@ export const serqModuleConfig: LgmcGuiSerqConfig = {
   providers: {
     dashboard: {
       card: {
+        id: 'serq-card',
         enabled: true,
         title: "lgmc-gui-serq.dashboard-card.title",
         description: "lgmc-gui-serq.dashboard-card.description",
@@ -85,6 +86,7 @@ export const serqModuleConfig: LgmcGuiSerqConfig = {
         iconColor: "#f57c00"
       },
       indicator: {
+        id: 'serq-indicator',
         enabled: true,
         image: "/assets/lgmc-gui-serq/icons/workOrder-150.png",
         title: "lgmc-gui-serq.dashboard-indicator.title",
--- src/config/router.config.ts
+++ src/config/router.config.ts
@@ -107,9 +107,6 @@ export const defaultRoutes: LgmcDefaultRoutesConfig = {
   autReportModuleConfig.pages.autReport,
   autReportModuleConfig.pages.details,
   configsModuleConfig.pages.configs,
-  configsModuleConfig.pages.routerConfig, //configsModuleConfig.pages.routerConfig and configsModuleConfig.pages.configsConfig must be before configsModuleConfig.pages.details in order to generate special component for configsConfig instead of general details component
-  configsModuleConfig.pages.modulesConfig,
-  configsModuleConfig.pages.details,
   wifiModuleConfig.pages.wifi,
   sqlModuleConfig.pages.home,
   sqlModuleConfig.pages.paramTypes,
