# Components and groups

Components are the services your visitors see a status for. This page covers adding them, setting their status, linking them to uptime monitors, grouping them, and how the uptime history on the public page is built.

## Add a component

:::steps
### Open the Components tab
Open your status page in **Status Page** and select the **Components** tab.

### Add it
Click **Add component** (or **Add your first component**).

### Fill in the details
- **Name**: what visitors see, for example `API`.
- **Description** (optional): what the component covers.
- **Group** (optional): the product it belongs to. See [Component groups](#component-groups).
- **Status source**: **Set manually** or **Sync from monitor**. See [Status source](#status-source).
- **Initial status**: the status a manual component starts with.

### Save
Click **Add Component**.
:::

To change a component later, use the pencil icon on its row. To remove it, use the trash icon and confirm.

## Component statuses

A component is always in one of five statuses:

| Status | Use it when |
|--------|------------|
| **Operational** | The service works normally. |
| **Degraded Performance** | It works, but slowly or with errors for some requests. |
| **Partial Outage** | Part of the service is down, or it is down for some customers. |
| **Major Outage** | The service is down. |
| **Maintenance** | Planned work is in progress. |

The page's overall banner at the top shows the worst status across its components, for example **All Systems Operational** or **Major Outage**.

## Status source

### Set manually

A manual component keeps the status you give it. Change it from the status control on the component's row in the **Components** tab.

### Sync from monitor

A synced component follows an [uptime monitor](https://docs-dev.evohub.io/uptime-overview.md). Pick the monitor under **Uptime Monitor** when you add or edit the component. Its row then shows a **Synced** badge, and its status cannot be set by hand. The status follows the monitor:

| Monitor state | Component status |
|---------------|-----------------|
| Up | Operational |
| Degraded (slow) | Degraded Performance |
| Down | Major Outage |
| Paused | Maintenance |

If EvoHub cannot read the monitor's state for a moment, the page keeps showing the component's last stored status.

### What visitors see during incidents and maintenance

A published incident or a maintenance window in progress can show a component differently from its own status:

- An active incident colors its affected components by its public impact: **Minor** shows as Degraded Performance, **Major** as Partial Outage, **Critical** as Major Outage. A component already in a worse state keeps the worse one.
- A maintenance window in progress shows its affected components as **Maintenance**, even if their monitor reports them down.

When that happens, the component's row in the console says so, for example "Major Outage on the page · API latency", so you see what visitors see. The status control on the row still shows the component's own status. See [Incidents and maintenance](https://docs-dev.evohub.io/status-incidents-and-maintenance.md).

## Order components

Visitors see components in the order the console shows them. To reorder, drag a component by its handle onto another, or use the up and down arrows beside it. Dropping a component onto one in another group also moves it into that group.

## Component groups

A group is a product: a name and the components in it. Groups only change what visitors see when the page uses the **Folded groups** or **A page per group** layout. With **One list**, groups help you organize the console but are not shown publicly.

### Create a group

You can create a group in two ways:

- Type a new name in a component's **Group** field. The field suggests the page's existing groups as you type.
- Click **New group**, give it a **Name**, tick the components that belong in it, and click **Create group**. Components you pick move out of any group they were in.

Group names are unique on a page.

### Manage groups

Each group has controls in its heading:

- **Add**: add a component straight into this group.
- **Rename group** (pencil icon): renames the group everywhere, including its subscribers and its logo. Clear the name to ungroup its components.
- **Move group up** / **Move group down**: change the order of groups.
- **Starts open** (Folded groups layout only): whether the group is expanded when a visitor opens the page. Groups are folded by default.

### Groups as product pages

With **A page per group**, the main page shows a card per group, and each group gets its own page. The group heading in the console shows that page's address, for example `/payments`, and how many subscribers follow it.

- **Group logo**: click the image slot beside the group name to upload a logo for its card and page (PNG, JPEG or WebP, up to 2 MB). Use the **×** to remove it.
- **Limit**: **A page per group** allows up to 3 groups. The console will not let you add a fourth group while this layout is on. A page that already has more groups cannot switch to it until you merge or ungroup some.
- **Ungrouped components**: components in no group are not shown to visitors in this layout. The console warns you about them. Move them into a group, or give that set a name.

## Uptime history

The public page shows a row of daily bars for each component, covering the page's **History window** (30 or 90 days, set on the **Appearance** tab), with the uptime percentage for that period.

- For a component synced from a monitor, each day's bar comes from the monitor's measured uptime for that day.
- For a manual component, a day is green unless an incident or maintenance window affecting that component overlapped it. Those days take the incident's or the maintenance's color.
- Today's bar always shows the component's current status.

Hover over a day to see what happened. In the **Folded groups** layout, each group shows one combined bar; open the group to see each component's bar.

## Related

- [Status pages](https://docs-dev.evohub.io/status-pages-overview.md)
- [Incidents and maintenance](https://docs-dev.evohub.io/status-incidents-and-maintenance.md)
- [Uptime monitoring](https://docs-dev.evohub.io/uptime-overview.md)
