Here are two other approaches you could look at:
The current ThingWorx Apps (CWC, AMU, RTTPM) also have a similar landing page, but the implementation is different. They are using SQL tables that have the menu configuration stored, what makes the implementation relative complex. Each menu item can have a ThingWorx user group assigned what allows for permission management.

The second approach is the out of the box functionality of Building Blocks. Building Blocks are a development method in ThingWorx and their are some common Building Blocks developed by PTC R&D and used by solutions like DPM. Those common building blocks can be used as base for a new solution and have a build in menu management functionality. However the out of the box UI is not a landing page but much more a sidebar menu.

Here is a link to the Building Block help center page:
https://support.ptc.com/help/building_blocks/r1.2/en/index.html#page/bb/building_blocks/Welcome.html#