# Routing and Navigation

Routing handles navigation between different views using the URL hash (e.g., #/devices).

# Registering Routes

Use Router.Register to map paths to actions.

Router.Register("home", state => App.ShowDefault(new HomeView()));
Router.Register("devices", state => App.ShowDefault(new DevicesView()));

# Sidebar Customization

You can inject custom buttons and links into the workspace sidebar using event hooks.

App.Sidebar.OnSidebarRebuild_BeforeFooter += (sidebar, mode, tracker) =>
{
    var btn = new SidebarButton("devices", UIcons.Boxes, "Devices")
                 .OnClick(() => Router.Navigate("#/devices"));
    sidebar.AddContent(btn);
};