# Portal / Dashboard Page with Icons

## Overview

Responsive layout for a dashboard / portal page with icons. Includes a slidable sidebar menu and tab-like UI component for showing and hiding modules. The sidebar menu is hidden by default on mobile but users can click on the hamburger menu in the upper left to open the sidebar.

## Structure

When this page is added to your app, it will come with two main groups:

* **Group page860Group**\
  This group contains the responsive settings for all additional modules you would add to the page. It is only visible when the toggle is set to the list view<br>
* **Group Inner sidebar tabs**\
  This group contains all the portal tab menu items.

This page will also come with one popup:

* **Popup Hidden Variables**\
  This popup includes various variables that are referenced in workflows or conditionals on the page.

  * **var - Website object** - This group stores the `website object` (e.g., app name, primary color, and etc.)
  * **var - tab url parameter** - This group stores the name of the tab (of type `text`) that the user is currently viewing.&#x20;
  * **var - sub url parameter** - This group stores the name of the subtab (of type `text`) that the user is currently viewing.
  * **var - dummy** - This is a placeholder variable group. You can store any data here by updating the data type and data source of the group.

  For more information on how to use hidden variables, click [here](https://app.gitbook.com/@airdev1/s/canvas/~/drafts/-M3h22ftTUg2MDpeUedQ/using-the-template/setup/features/hidden-variables-popup).

## How to set up

* Within **Group Inner sidebar tabs**, you will find various groups called **Group Main Nav 1\_text**, **Group Main Nav 2\_text**, **Group Main Nav 3\_text**, and etc. To customize these tabs, simply update the text data source of these groups to the names of your tabs. Feel free to hide or unhide any of these groups depending on how many tabs you need in your portal.
  * Each **Group Main Nav #\_text** comes with a collapsible subtab group, an alert group for notifications. These additional UIs are all hidden by default. To enable, simply select the element and check the box for *This element is visible on page load*.

![Navigational tabs in the sidebar](https://576109535-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LbzMeM9XfnblRd78nga%2F-MGGJytPqxYoAIigRx8h%2F-MGIKqPznrRdfjFzexQ4%2FScreen%20Shot%202020-09-03%20at%202.40.59%20AM.png?alt=media\&token=520dd4f4-9a4f-42d4-b73b-87be7b820095)

![Use these subtabs when you have additional content you want to display under each main tab](https://576109535-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LbzMeM9XfnblRd78nga%2F-MGGJytPqxYoAIigRx8h%2F-MGIKzRgOOZawmORLrnt%2FScreen%20Shot%202020-09-03%20at%202.41.31%20AM.png?alt=media\&token=3f340533-c710-4999-b2d8-a44076e02eb0)

![Use this alert group when you want to display new notifications in a tab](https://576109535-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LbzMeM9XfnblRd78nga%2F-M1jD53hNk91wmvwYDPU%2F-M1le3rHyb4VDXVTb11y%2FScreen%20Shot%202020-03-06%20at%201.00.39%20PM.png?alt=media\&token=83d1d960-6f75-481e-af56-eae89bf7f085)

{% hint style="info" %}
If you add more **Group Main Nav #\_text** tabs then please resize **Group sidebar PLACEHOLDER** so that it is not overlapping with any other elements. If any elements are overlapping, responsiveness on the page would not work well.
{% endhint %}

* If needed, resize **Group page860Group** and add other modules inside it.

{% hint style="info" %}
If you add more modules, please resize **Group PLACEHOLDER** so that it is not overlapping with any other elements (for responsiveness).
{% endhint %}

* Adjust the positioning of **FloatingGroup Main back to top**. It should be anchored towards the bottom of the page. As the user scrolls down the page, this group will become visible. Clicking on this group will take the user back to the top of the page (useful when you have a very long portal page).

### Removing tab icons

* To hide the feather icons in the navigational tabs, you can go to the responsive tab in the Bubble editor and add a hiding rule to **Group Inner nav # icon\_text**. Adding a hiding rule to a group will collapse the group horizontally when the parent width of the group is at a certain width.

![](https://576109535-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LbzMeM9XfnblRd78nga%2F-M1jD53hNk91wmvwYDPU%2F-M1lgssekMOoPFGgwBZ9%2FScreen%20Shot%202020-03-06%20at%201.13.53%20PM.png?alt=media\&token=ae3a17d8-1ab8-411e-a8b7-cba8eacaf575)

### **Showing or hiding a module**

* For each module that you add to **Group page860Group**, uncheck the box for *This element is visible on page load* and check the box for *Collapse this element's height when hidden*.<br>
* For each module, go to the Conditional tab and add a conditional statement for when to show the module:
  * *var - tab url parameter's text is **Group Inner nav # icon\_text*** *tab's text then This group is visible*<br>
* For each tab within **Group Inner sidebar tabs**, add a workflow that triggers the custom workflow *Navigate* and pass **Group Main Nav #\_text tab's** text (this group's text) as a workflow thing.&#x20;

## Why is my sidebar not showing?

{% hint style="info" %}
**Floatinggroup Sidebar\_website** is set to float to both so that the sidebar is anchored to both the top and bottom of the page and allows for scrolling within the floating group. When a floating group is set to both, the floating group height needs to be the same height as the page height (i.e., the bottom of the floating group is aligned with the bottom of the page). If not, then the floating group will "disappear" when you preview the page.
{% endhint %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.airdev.co/canvas-pages-and-modules/2.0.0/pages/portal-dashboard-page-with-icons.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
