Why implement a standard navigation bar across the system?
For most systems, it is imperative that the user can get to many areas of the system in only a few clicks. Implementing this method of system navigation not only solves this problem, but also has some other benefits. It brings clarity to which area of the system the user is in, promotes standard navigation behavior which helps the user experience, and is very easy to manage and update once implemented
What does it look like?
Without using a standard navigation bar, keeping things updated over time can be very time consuming and sloppy to manage.
By using this system, you only need to do a major setup one time. From there, any new layouts or modules will adopt and fit into the existing system without issue. You avoid having to go back to all other layouts and update their individual button bars.
Example: Adding a new module
In this case, I added the “ContactInfo” table and created a Form and List view to display this data. To update the navigation bar, all I needed to do was update one script and my navigation was already completely set up!
The video below demonstrates this update and also showcases how the nav-bar is automatically updated on all layouts.
There are a few key components to setting up this system navigation.
- Startup script
- Navigation script
- Layout naming convention
- Layout objects
1. Startup Script

2. Navigation Script


3. Layout naming convention

4. Layout objects
Layout in Browse mode

Layout in Layout mode

Naming convention for each individual button. Used in the “Active” calculation

Hide the condition for each individual button.

Setup for each individual button

Setup for Active Calc

In Conclusion: Adding a new module
Utilizing this Navigation Bar can save many hours in the long run, especially if you make frequent updates or additions to your system(s).
If you’re struggling with implementing any of these concepts, or have any questions, please feel free to email support@kyologic.com where we can help you further!
John is the founder and CEO of Kyo Logic, as well as the chief architect of KyoSync II (which synchronizes data across multiple systems that can’t connect or communicate directly). John works very closely with clients and the Kyo Logic team to help create custom applications and platforms.
John is also an avid electronics enthusiast and audiophile. He created the Caitlin LSA-1 which is a microprocessor-controlled audio preamp used in very high-end audio systems. John has lived in Montreal, Fort Worth, Johannesburg and currently lives in Westport, Connecticut.