diff --git a/web/gui/src/main/resources/org/onosproject/ui/lion/_config/core.fw.Mast.lioncfg b/web/gui/src/main/resources/org/onosproject/ui/lion/_config/core.fw.Mast.lioncfg
new file mode 100644
index 0000000..4d93303
--- /dev/null
+++ b/web/gui/src/main/resources/org/onosproject/ui/lion/_config/core.fw.Mast.lioncfg
@@ -0,0 +1,20 @@
+#
+# Copyright 2017-present Open Networking Laboratory
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+#
+
+bundle core.fw.Mast
+
+from core.fw.Mast import *
diff --git a/web/gui/src/main/resources/org/onosproject/ui/lion/_config/core.fw.Nav.lioncfg b/web/gui/src/main/resources/org/onosproject/ui/lion/_config/core.fw.Nav.lioncfg
new file mode 100644
index 0000000..f19c55a
--- /dev/null
+++ b/web/gui/src/main/resources/org/onosproject/ui/lion/_config/core.fw.Nav.lioncfg
@@ -0,0 +1,35 @@
+#
+# Copyright 2017-present Open Networking Laboratory
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+#
+
+bundle core.fw.Nav
+
+alias cv core.view
+
+from core.fw.Nav import *
+
+from cv.App import nav_item_app
+from cv.Settings import nav_item_settings
+from cv.Cluster import nav_item_cluster
+from cv.Processor import nav_item_processor
+from cv.Partition import nav_item_partition
+from cv.Topo import nav_item_topo
+from cv.Topo2 import nav_item_topo2
+from cv.Device import nav_item_device
+from cv.Link import nav_item_link
+from cv.Host import nav_item_host
+from cv.Intent import nav_item_intent
+from cv.Tunnel import nav_item_tunnel
diff --git a/web/gui/src/main/resources/org/onosproject/ui/lion/_config/core.fw.QuickHelp.lioncfg b/web/gui/src/main/resources/org/onosproject/ui/lion/_config/core.fw.QuickHelp.lioncfg
new file mode 100644
index 0000000..50d65bd
--- /dev/null
+++ b/web/gui/src/main/resources/org/onosproject/ui/lion/_config/core.fw.QuickHelp.lioncfg
@@ -0,0 +1,20 @@
+#
+# Copyright 2017-present Open Networking Laboratory
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+#
+
+bundle core.fw.QuickHelp
+
+from core.fw.QuickHelp import *
diff --git a/web/gui/src/main/resources/org/onosproject/ui/lion/_config/core.view.App.lioncfg b/web/gui/src/main/resources/org/onosproject/ui/lion/_config/core.view.App.lioncfg
new file mode 100644
index 0000000..9baf17c
--- /dev/null
+++ b/web/gui/src/main/resources/org/onosproject/ui/lion/_config/core.view.App.lioncfg
@@ -0,0 +1,30 @@
+#
+# Copyright 2017-present Open Networking Laboratory
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+#
+
+bundle core.view.App
+
+alias cv core.view
+alias cf core.fw
+alias cc core.common
+
+from cv.App import *
+
+from cf.QuickHelp import qh_hint_close_detail
+
+from cc.Props import icon, title, app_id, version, category, origin, state, role
+from cc.Action import activate, deactivate, uninstall
+from cc.Ui import click, scroll_down
diff --git a/web/gui/src/main/resources/org/onosproject/ui/lion/_config/core.view.Cluster.lioncfg b/web/gui/src/main/resources/org/onosproject/ui/lion/_config/core.view.Cluster.lioncfg
index 1cf7e03..8783b44 100644
--- a/web/gui/src/main/resources/org/onosproject/ui/lion/_config/core.view.Cluster.lioncfg
+++ b/web/gui/src/main/resources/org/onosproject/ui/lion/_config/core.view.Cluster.lioncfg
@@ -18,9 +18,13 @@
 bundle core.view.Cluster
 
 alias cv core.view
+alias cf core.fw
 alias cc core.common
 
 from cv.Cluster import *
+
+from cf.QuickHelp import qh_hint_close_detail
+
 from cc.Network import devices, node_id, ip_address, tcp_port, uri, protocol
 from cc.Props import type, chassis_id, vendor, hw_version, sw_version, serial_number
 from cc.State import total, active, started, last_updated
diff --git a/web/gui/src/main/resources/org/onosproject/ui/lion/core/common/Action.properties b/web/gui/src/main/resources/org/onosproject/ui/lion/core/common/Action.properties
index ef0932e..8c8f603 100644
--- a/web/gui/src/main/resources/org/onosproject/ui/lion/core/common/Action.properties
+++ b/web/gui/src/main/resources/org/onosproject/ui/lion/core/common/Action.properties
@@ -21,3 +21,5 @@
 resume=Resume
 stop=Stop
 uninstall=Uninstall
+activate=Activate
+deactivate=Deactivate
diff --git a/web/gui/src/main/resources/org/onosproject/ui/lion/core/common/Action_it.properties b/web/gui/src/main/resources/org/onosproject/ui/lion/core/common/Action_it.properties
index 458db47..6cbd120 100644
--- a/web/gui/src/main/resources/org/onosproject/ui/lion/core/common/Action_it.properties
+++ b/web/gui/src/main/resources/org/onosproject/ui/lion/core/common/Action_it.properties
@@ -21,3 +21,5 @@
 resume=Riprendi
 stop=Ferma
 uninstall=Disinstalla
+#activate=
+#deactivate=
diff --git a/web/gui/src/main/resources/org/onosproject/ui/lion/core/common/Action_ko.properties b/web/gui/src/main/resources/org/onosproject/ui/lion/core/common/Action_ko.properties
index a687261..eb06012 100644
--- a/web/gui/src/main/resources/org/onosproject/ui/lion/core/common/Action_ko.properties
+++ b/web/gui/src/main/resources/org/onosproject/ui/lion/core/common/Action_ko.properties
@@ -21,3 +21,5 @@
 resume=재개
 stop=정지
 uninstall=삭제
+#activate=
+#deactivate=
diff --git a/web/gui/src/main/resources/org/onosproject/ui/lion/core/common/Action_zh_CN.properties b/web/gui/src/main/resources/org/onosproject/ui/lion/core/common/Action_zh_CN.properties
index 7019e53..16b4d97 100644
--- a/web/gui/src/main/resources/org/onosproject/ui/lion/core/common/Action_zh_CN.properties
+++ b/web/gui/src/main/resources/org/onosproject/ui/lion/core/common/Action_zh_CN.properties
@@ -21,3 +21,5 @@
 resume=恢复
 stop=停止
 uninstall=卸载
+#activate=
+#deactivate=
diff --git a/web/gui/src/main/resources/org/onosproject/ui/lion/core/common/Props.properties b/web/gui/src/main/resources/org/onosproject/ui/lion/core/common/Props.properties
index 420e8ea..897afa6 100644
--- a/web/gui/src/main/resources/org/onosproject/ui/lion/core/common/Props.properties
+++ b/web/gui/src/main/resources/org/onosproject/ui/lion/core/common/Props.properties
@@ -15,11 +15,20 @@
 #
 #
 
-type=Type
-vendor=Vendor
-chassis_id=Chassis ID
+# Typically used as table column headers or property labels
 
+chassis_id=Chassis ID
 hw_version=H/W Version
 sw_version=S/W Version
-
 serial_number=Serial #
+app_id=App ID
+
+type=Type
+vendor=Vendor
+icon=Icon
+title=Title
+state=State
+category=Category
+version=Version
+origin=Origin
+role=Role
diff --git a/web/gui/src/main/resources/org/onosproject/ui/lion/core/common/Props_it.properties b/web/gui/src/main/resources/org/onosproject/ui/lion/core/common/Props_it.properties
index 397de07..d0f9747 100644
--- a/web/gui/src/main/resources/org/onosproject/ui/lion/core/common/Props_it.properties
+++ b/web/gui/src/main/resources/org/onosproject/ui/lion/core/common/Props_it.properties
@@ -15,11 +15,20 @@
 #
 #
 
-type=Categoria
-vendor=Produttore
-chassis_id=Chassis ID
+# Typically used as table column headers or property labels
 
+chassis_id=Chassis ID
 hw_version=Versione Hardware
 sw_version=Versione Software
-
 serial_number=Numero Seriale
+#app_id=
+
+type=Categoria
+vendor=Produttore
+#icon=
+#title=
+#state=
+#category=
+#version=
+#origin=
+#role=
diff --git a/web/gui/src/main/resources/org/onosproject/ui/lion/core/common/Props_ko.properties b/web/gui/src/main/resources/org/onosproject/ui/lion/core/common/Props_ko.properties
index a47edbe..4fa873d 100644
--- a/web/gui/src/main/resources/org/onosproject/ui/lion/core/common/Props_ko.properties
+++ b/web/gui/src/main/resources/org/onosproject/ui/lion/core/common/Props_ko.properties
@@ -15,11 +15,20 @@
 #
 #
 
-type=종류
-vendor=벤더
-chassis_id=Chassis ID
+# Typically used as table column headers or property labels
 
+chassis_id=Chassis ID
 hw_version=하드웨어 버전
 sw_version=소프트웨어 버전
+serial_number=시리얼 번호
+#app_id=
 
-serial_number=시리얼 번호
\ No newline at end of file
+type=종류
+vendor=벤더
+#icon=
+#title=
+#state=
+#category=
+#version=
+#origin=
+#role=
diff --git a/web/gui/src/main/resources/org/onosproject/ui/lion/core/common/Props_zh_CN.properties b/web/gui/src/main/resources/org/onosproject/ui/lion/core/common/Props_zh_CN.properties
index 5fd8e87..21cbc67 100644
--- a/web/gui/src/main/resources/org/onosproject/ui/lion/core/common/Props_zh_CN.properties
+++ b/web/gui/src/main/resources/org/onosproject/ui/lion/core/common/Props_zh_CN.properties
@@ -15,11 +15,20 @@
 #
 #
 
-type=类型
-vendor=供应商
-chassis_id=框架 标识号
+# Typically used as table column headers or property labels
 
+chassis_id=框架 标识号
 hw_version=硬件版本
 sw_version=软件版本
+serial_number=序列号
+#app_id=
 
-serial_number=序列号
\ No newline at end of file
+type=类型
+vendor=供应商
+#icon=
+#title=
+#state=
+#category=
+#version=
+#origin=
+#role=
diff --git a/web/gui/src/main/resources/org/onosproject/ui/lion/core/common/Ui.properties b/web/gui/src/main/resources/org/onosproject/ui/lion/core/common/Ui.properties
index dd0cbc7..09b8973 100644
--- a/web/gui/src/main/resources/org/onosproject/ui/lion/core/common/Ui.properties
+++ b/web/gui/src/main/resources/org/onosproject/ui/lion/core/common/Ui.properties
@@ -14,9 +14,14 @@
 # limitations under the License.
 #
 #
+
+# Common button text
 ok=OK
 cancel=Cancel
 
-# --- key binding and user gesture descriptions
+# Gesture text
 click=click
-scroll_down=scroll down
\ No newline at end of file
+scroll_down=scroll down
+
+# Common control button tooltips
+tt_ctl_auto_refresh=Toggle auto refresh
diff --git a/web/gui/src/main/resources/org/onosproject/ui/lion/core/common/Ui_it.properties b/web/gui/src/main/resources/org/onosproject/ui/lion/core/common/Ui_it.properties
index adbf38f..29ebb5a 100644
--- a/web/gui/src/main/resources/org/onosproject/ui/lion/core/common/Ui_it.properties
+++ b/web/gui/src/main/resources/org/onosproject/ui/lion/core/common/Ui_it.properties
@@ -14,9 +14,14 @@
 # limitations under the License.
 #
 #
+
+# Common button text
 ok=OK
 cancel=Annulla
 
-# --- key binding and user gesture descriptions
+# Gesture text
 click=click
-scroll_down=scorri verso il basso
\ No newline at end of file
+scroll_down=scorri verso il basso
+
+# Common control button tooltips
+#tt_ctl_auto_refresh=
diff --git a/web/gui/src/main/resources/org/onosproject/ui/lion/core/common/Ui_ko.properties b/web/gui/src/main/resources/org/onosproject/ui/lion/core/common/Ui_ko.properties
index 57f7fd8..a04753d 100644
--- a/web/gui/src/main/resources/org/onosproject/ui/lion/core/common/Ui_ko.properties
+++ b/web/gui/src/main/resources/org/onosproject/ui/lion/core/common/Ui_ko.properties
@@ -14,9 +14,14 @@
 # limitations under the License.
 #
 #
+
+# Common button text
 ok=승인
 cancel=취소
 
-# --- key binding and user gesture descriptions
+# Gesture text
 click=클릭
-scroll_down=아래로 스크롤
\ No newline at end of file
+scroll_down=아래로 스크롤
+
+# Common control button tooltips
+#tt_ctl_auto_refresh=
diff --git a/web/gui/src/main/resources/org/onosproject/ui/lion/core/common/Ui_zh_CN.properties b/web/gui/src/main/resources/org/onosproject/ui/lion/core/common/Ui_zh_CN.properties
index 777c861..107ef07 100644
--- a/web/gui/src/main/resources/org/onosproject/ui/lion/core/common/Ui_zh_CN.properties
+++ b/web/gui/src/main/resources/org/onosproject/ui/lion/core/common/Ui_zh_CN.properties
@@ -14,9 +14,14 @@
 # limitations under the License.
 #
 #
+
+# Common button text
 ok=确定
 cancel=取消
 
-# --- key binding and user gesture descriptions
+# Gesture text
 click=点击
-scroll_down=向下滚动
\ No newline at end of file
+scroll_down=向下滚动
+
+# Common control button tooltips
+#tt_ctl_auto_refresh=
diff --git a/web/gui/src/main/resources/org/onosproject/ui/lion/core/fw/Mast.properties b/web/gui/src/main/resources/org/onosproject/ui/lion/core/fw/Mast.properties
new file mode 100644
index 0000000..b353958
--- /dev/null
+++ b/web/gui/src/main/resources/org/onosproject/ui/lion/core/fw/Mast.properties
@@ -0,0 +1,23 @@
+#
+# Copyright 2017-present Open Networking Laboratory
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+#
+# Localization strings for Masthead
+
+# Tooltip for context-sensitive help button [?]
+tt_help=Show help page for current view
+
+# Logout button
+logout=Logout
diff --git a/web/gui/src/main/resources/org/onosproject/ui/lion/core/fw/Mast_it.properties b/web/gui/src/main/resources/org/onosproject/ui/lion/core/fw/Mast_it.properties
new file mode 100644
index 0000000..e816069
--- /dev/null
+++ b/web/gui/src/main/resources/org/onosproject/ui/lion/core/fw/Mast_it.properties
@@ -0,0 +1,23 @@
+#
+# Copyright 2017-present Open Networking Laboratory
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+#
+# Localization strings for Masthead
+
+# Tooltip for context-sensitive help button [?]
+#tt_help=
+
+# Logout button
+#logout=
diff --git a/web/gui/src/main/resources/org/onosproject/ui/lion/core/fw/Mast_ko.properties b/web/gui/src/main/resources/org/onosproject/ui/lion/core/fw/Mast_ko.properties
new file mode 100644
index 0000000..e816069
--- /dev/null
+++ b/web/gui/src/main/resources/org/onosproject/ui/lion/core/fw/Mast_ko.properties
@@ -0,0 +1,23 @@
+#
+# Copyright 2017-present Open Networking Laboratory
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+#
+# Localization strings for Masthead
+
+# Tooltip for context-sensitive help button [?]
+#tt_help=
+
+# Logout button
+#logout=
diff --git a/web/gui/src/main/resources/org/onosproject/ui/lion/core/fw/Mast_zh_CN.properties b/web/gui/src/main/resources/org/onosproject/ui/lion/core/fw/Mast_zh_CN.properties
new file mode 100644
index 0000000..e816069
--- /dev/null
+++ b/web/gui/src/main/resources/org/onosproject/ui/lion/core/fw/Mast_zh_CN.properties
@@ -0,0 +1,23 @@
+#
+# Copyright 2017-present Open Networking Laboratory
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+#
+# Localization strings for Masthead
+
+# Tooltip for context-sensitive help button [?]
+#tt_help=
+
+# Logout button
+#logout=
diff --git a/web/gui/src/main/resources/org/onosproject/ui/lion/core/fw/Nav.properties b/web/gui/src/main/resources/org/onosproject/ui/lion/core/fw/Nav.properties
new file mode 100644
index 0000000..ecf717f
--- /dev/null
+++ b/web/gui/src/main/resources/org/onosproject/ui/lion/core/fw/Nav.properties
@@ -0,0 +1,29 @@
+#
+# Copyright 2017-present Open Networking Laboratory
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+#
+# Localization strings for Navigation Panel
+
+# Category headers
+cat_platform=Platform
+cat_network=Network
+cat_other=Other
+
+# Note that contributed views will be adding their own localized titles
+#  for their nav item, with a property key "nav_item_{viewID}".
+#
+# E.g. in the Device view properties bundle there will be:
+#
+#  nav_item_device=Devices
diff --git a/web/gui/src/main/resources/org/onosproject/ui/lion/core/fw/Nav_it.properties b/web/gui/src/main/resources/org/onosproject/ui/lion/core/fw/Nav_it.properties
new file mode 100644
index 0000000..beca61e
--- /dev/null
+++ b/web/gui/src/main/resources/org/onosproject/ui/lion/core/fw/Nav_it.properties
@@ -0,0 +1,29 @@
+#
+# Copyright 2017-present Open Networking Laboratory
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+#
+# Localization strings for Navigation Panel
+
+# Category headers
+#cat_platform=
+#cat_network=
+#cat_other=
+
+# Note that contributed views will be adding their own localized titles
+#  for their nav item, with a property key "nav_item_{viewID}".
+#
+# E.g. in the Device view properties bundle there will be:
+#
+#  nav_item_device=Devices
diff --git a/web/gui/src/main/resources/org/onosproject/ui/lion/core/fw/Nav_ko.properties b/web/gui/src/main/resources/org/onosproject/ui/lion/core/fw/Nav_ko.properties
new file mode 100644
index 0000000..beca61e
--- /dev/null
+++ b/web/gui/src/main/resources/org/onosproject/ui/lion/core/fw/Nav_ko.properties
@@ -0,0 +1,29 @@
+#
+# Copyright 2017-present Open Networking Laboratory
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+#
+# Localization strings for Navigation Panel
+
+# Category headers
+#cat_platform=
+#cat_network=
+#cat_other=
+
+# Note that contributed views will be adding their own localized titles
+#  for their nav item, with a property key "nav_item_{viewID}".
+#
+# E.g. in the Device view properties bundle there will be:
+#
+#  nav_item_device=Devices
diff --git a/web/gui/src/main/resources/org/onosproject/ui/lion/core/fw/Nav_zh_CN.properties b/web/gui/src/main/resources/org/onosproject/ui/lion/core/fw/Nav_zh_CN.properties
new file mode 100644
index 0000000..beca61e
--- /dev/null
+++ b/web/gui/src/main/resources/org/onosproject/ui/lion/core/fw/Nav_zh_CN.properties
@@ -0,0 +1,29 @@
+#
+# Copyright 2017-present Open Networking Laboratory
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+#
+# Localization strings for Navigation Panel
+
+# Category headers
+#cat_platform=
+#cat_network=
+#cat_other=
+
+# Note that contributed views will be adding their own localized titles
+#  for their nav item, with a property key "nav_item_{viewID}".
+#
+# E.g. in the Device view properties bundle there will be:
+#
+#  nav_item_device=Devices
diff --git a/web/gui/src/main/resources/org/onosproject/ui/lion/core/fw/QuickHelp.properties b/web/gui/src/main/resources/org/onosproject/ui/lion/core/fw/QuickHelp.properties
new file mode 100644
index 0000000..1021c10
--- /dev/null
+++ b/web/gui/src/main/resources/org/onosproject/ui/lion/core/fw/QuickHelp.properties
@@ -0,0 +1,32 @@
+#
+# Copyright 2017-present Open Networking Laboratory
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+#
+# Common text in the Quick Help panel
+
+# Panel title
+qh_title=Quick Help
+
+# Hint for \ and / keys
+qh_hint_show_hide_qh=Show / hide Quick Help
+
+# Escape key hint
+qh_hint_esc=Dismiss dialog or cancel selections
+
+# T key hint : toggle the ui theme (between light / dark)
+qh_hint_t=Toggle theme
+
+# Common for a lot of views adding their own escape-key handler
+qh_hint_close_detail=Close the details panel
diff --git a/web/gui/src/main/resources/org/onosproject/ui/lion/core/fw/QuickHelp_it.properties b/web/gui/src/main/resources/org/onosproject/ui/lion/core/fw/QuickHelp_it.properties
new file mode 100644
index 0000000..09f561b
--- /dev/null
+++ b/web/gui/src/main/resources/org/onosproject/ui/lion/core/fw/QuickHelp_it.properties
@@ -0,0 +1,32 @@
+#
+# Copyright 2017-present Open Networking Laboratory
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+#
+# Common text in the Quick Help panel
+
+# Panel title
+#qh_title=
+
+# Hint for \ and / keys
+#qh_hint_show_hide_qh=
+
+# Escape key hint
+#qh_hint_esc=
+
+# T key hint : toggle the ui theme (between light / dark)
+#qh_hint_t=
+
+# Common for a lot of views adding their own escape-key handler
+qh_hint_close_detail=Chiude il pannello dei dettagli
diff --git a/web/gui/src/main/resources/org/onosproject/ui/lion/core/fw/QuickHelp_ko.properties b/web/gui/src/main/resources/org/onosproject/ui/lion/core/fw/QuickHelp_ko.properties
new file mode 100644
index 0000000..5ac8971
--- /dev/null
+++ b/web/gui/src/main/resources/org/onosproject/ui/lion/core/fw/QuickHelp_ko.properties
@@ -0,0 +1,32 @@
+#
+# Copyright 2017-present Open Networking Laboratory
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+#
+# Common text in the Quick Help panel
+
+# Panel title
+#qh_title=
+
+# Hint for \ and / keys
+#qh_hint_show_hide_qh=
+
+# Escape key hint
+#qh_hint_esc=
+
+# T key hint : toggle the ui theme (between light / dark)
+#qh_hint_t=
+
+# Common for a lot of views adding their own escape-key handler
+qh_hint_close_detail=상세 패널 닫기
diff --git a/web/gui/src/main/resources/org/onosproject/ui/lion/core/fw/QuickHelp_zh_CN.properties b/web/gui/src/main/resources/org/onosproject/ui/lion/core/fw/QuickHelp_zh_CN.properties
new file mode 100644
index 0000000..6a03588
--- /dev/null
+++ b/web/gui/src/main/resources/org/onosproject/ui/lion/core/fw/QuickHelp_zh_CN.properties
@@ -0,0 +1,32 @@
+#
+# Copyright 2017-present Open Networking Laboratory
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+#
+# Common text in the Quick Help panel
+
+# Panel title
+#qh_title=
+
+# Hint for \ and / keys
+#qh_hint_show_hide_qh=
+
+# Escape key hint
+#qh_hint_esc=
+
+# T key hint : toggle the ui theme (between light / dark)
+#qh_hint_t=
+
+# Common for a lot of views adding their own escape-key handler
+qh_hint_close_detail=关闭详细信息面板
diff --git a/web/gui/src/main/resources/org/onosproject/ui/lion/core/view/App.properties b/web/gui/src/main/resources/org/onosproject/ui/lion/core/view/App.properties
new file mode 100644
index 0000000..8fab3d3
--- /dev/null
+++ b/web/gui/src/main/resources/org/onosproject/ui/lion/core/view/App.properties
@@ -0,0 +1,70 @@
+#
+# Copyright 2017-present Open Networking Laboratory
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+#
+
+# =======================================================================
+# | Plea to Translators:                                                |
+# | --------------------                                                |
+# |   I know you are all keen to add your own language localization     |
+# |   bundles for these files as soon as they appear in Gerrit reviews, |
+# |   but please refrain from doing so immediately, until given the     |
+# |   "green light"...                                                  |
+# |                                                                     |
+# |   The reason is, sometimes localization keys need to be renamed, or |
+# |   strings moved to other bundles, while we work out how to localize |
+# |   each UI component. If there are multiple files while a bundle is  |
+# |   "in flux", it means modifications need to be done in 4-or-more    |
+# |   places instead of just 1.                                         |
+# |                                                                     |
+# |   I promise I will mark a bundle as "ready for translation" as      |
+# |   soon as the localization work has been completed for the default  |
+# |   bundle, and the "dust has settled".                               |
+# |                                                                     |
+# |   Thank you in advance for your patience and restraint  :)          |
+# =======================================================================
+
+
+# ==========================================
+# |  WIP -- Not Yet Ready For Translation  |
+# ==========================================
+
+# Text that appears in the navigation panel
+nav_item_app=Applications
+
+# View title
+title_apps=Applications
+
+# Control button tooltips
+tt_ctl_upload=Upload an application (.oar file)
+tt_ctl_activate=Activate selected application
+tt_ctl_deactivate=Deactivate selected application
+tt_ctl_uninstall=Uninstall selected application
+
+# Quick-Help panel
+qh_hint_click=Select a row to show application details
+qh_hint_scroll_down=See more applications
+
+# App details panel
+dp_features=Features
+dp_required_apps=Required Apps
+dp_permissions=Permissions
+
+# App dialog panel
+dlg_confirm_action=Confirm Action
+
+dlg_warn_deactivate=Deactivating or uninstalling this component \
+  can have serious negative consequences!
+dlg_warn_own_risk=** DO SO AT YOUR OWN RISK **
diff --git a/web/gui/src/main/resources/org/onosproject/ui/lion/core/view/Cluster.properties b/web/gui/src/main/resources/org/onosproject/ui/lion/core/view/Cluster.properties
index 1ae723c..c6fd954 100644
--- a/web/gui/src/main/resources/org/onosproject/ui/lion/core/view/Cluster.properties
+++ b/web/gui/src/main/resources/org/onosproject/ui/lion/core/view/Cluster.properties
@@ -14,8 +14,14 @@
 # limitations under the License.
 #
 #
+# Cluster view specific text
+
+# Text that appears in the navigation panel
+nav_item_cluster=Cluster Nodes
+
+# View title
 title_cluster_nodes=Cluster Nodes
 
-k_esc_hint=Close the details panel
-k_click_hint=Select a row to show cluster node details
-k_scroll_down_hint=See available cluster nodes
+# Quick-Help panel
+qh_hint_click=Select a row to show cluster node details
+qh_hint_scroll_down=See available cluster nodes
diff --git a/web/gui/src/main/resources/org/onosproject/ui/lion/core/view/Cluster_it.properties b/web/gui/src/main/resources/org/onosproject/ui/lion/core/view/Cluster_it.properties
index 5dacee1..7534174 100644
--- a/web/gui/src/main/resources/org/onosproject/ui/lion/core/view/Cluster_it.properties
+++ b/web/gui/src/main/resources/org/onosproject/ui/lion/core/view/Cluster_it.properties
@@ -14,8 +14,14 @@
 # limitations under the License.
 #
 #
+# Cluster view specific text
+
+# Text that appears in the navigation panel
+nav_item_cluster=Nodi del Cluster
+
+# View title
 title_cluster_nodes=Nodi del Cluster
 
-k_esc_hint=Chiude il pannello dei dettagli
-k_click_hint=Seleziona una riga per mostrare i dettagli del nodo
-k_scroll_down_hint=Mostra i nodi del cluster disponibili
+# Quick-Help panel
+qh_hint_click=Seleziona una riga per mostrare i dettagli del nodo
+qh_hint_scroll_down=Mostra i nodi del cluster disponibili
diff --git a/web/gui/src/main/resources/org/onosproject/ui/lion/core/view/Cluster_ko.properties b/web/gui/src/main/resources/org/onosproject/ui/lion/core/view/Cluster_ko.properties
index b0f5186..22fd98a 100644
--- a/web/gui/src/main/resources/org/onosproject/ui/lion/core/view/Cluster_ko.properties
+++ b/web/gui/src/main/resources/org/onosproject/ui/lion/core/view/Cluster_ko.properties
@@ -14,8 +14,14 @@
 # limitations under the License.
 #
 #
+# Cluster view specific text
+
+# Text that appears in the navigation panel
+nav_item_cluster=클러스터 노드
+
+# View title
 title_cluster_nodes=클러스터 노드
 
-k_esc_hint=상세 패널 닫기
-k_click_hint=행을 선택하여 클러스터 노드 세부 정보 표시
-k_scroll_down_hint=가용한 클러스터 노드 보기
\ No newline at end of file
+# Quick-Help panel
+qh_hint_click=행을 선택하여 클러스터 노드 세부 정보 표시
+qh_hint_scroll_down=가용한 클러스터 노드 보기
\ No newline at end of file
diff --git a/web/gui/src/main/resources/org/onosproject/ui/lion/core/view/Cluster_zh_CN.properties b/web/gui/src/main/resources/org/onosproject/ui/lion/core/view/Cluster_zh_CN.properties
index cd41bb7..8fceec6 100644
--- a/web/gui/src/main/resources/org/onosproject/ui/lion/core/view/Cluster_zh_CN.properties
+++ b/web/gui/src/main/resources/org/onosproject/ui/lion/core/view/Cluster_zh_CN.properties
@@ -14,8 +14,14 @@
 # limitations under the License.
 #
 #
+# Cluster view specific text
+
+# Text that appears in the navigation panel
+nav_item_cluster=集群节点
+
+# View title
 title_cluster_nodes=集群节点
 
-k_esc_hint=关闭详细信息面板
-k_click_hint=选择一行以显示集群节点详细信息
-k_scroll_down_hint=查看可用的集群节点
+# Quick-Help panel
+qh_hint_click=选择一行以显示集群节点详细信息
+qh_hint_scroll_down=查看可用的集群节点
diff --git a/web/gui/src/main/webapp/app/view/cluster/cluster.js b/web/gui/src/main/webapp/app/view/cluster/cluster.js
index 3732ab2..89cb8a2 100644
--- a/web/gui/src/main/webapp/app/view/cluster/cluster.js
+++ b/web/gui/src/main/webapp/app/view/cluster/cluster.js
@@ -278,12 +278,12 @@
             }
             // create key bindings to handle panel
             ks.keyBindings({
-                esc: [handleEscape, lion('k_esc_hint')],
+                esc: [handleEscape, lion('qh_hint_close_detail')],
                 _helpFormat: ['esc']
             });
             ks.gestureNotes([
-                [lion('click'), lion('k_click_hint')],
-                [lion('scroll_down'), lion('k_scroll_down_hint')]
+                [lion('click'), lion('qh_hint_click')],
+                [lion('scroll_down'), lion('qh_hint_scroll_down')]
             ]);
             // if the panelData changes
             scope.$watch('panelData', function () {
