# unifi-utilities/unifi-common architecture

> Architecture diagram of the GitHub repository unifi-utilities/unifi-common, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-09-25). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/unifi-utilities/unifi-common
- Repository: https://github.com/unifi-utilities/unifi-common

## Overview

unifi-common installs a systemd service that enables shell scripts to run during UniFi device startup. The README documents both online and offline installation paths and describes custom configuration and other boot-time work as uses. Source excerpts were unavailable, so installation internals and the exact service-to-script dispatch mechanism are not shown.

Main entry points: [`udm-boot.service`](https://github.com/unifi-utilities/unifi-common/blob/main/udm-boot.service) (Boot service), [`remote_install.sh`](https://github.com/unifi-utilities/unifi-common/blob/main/remote_install.sh) (Online installer), [`manual-install/install.sh`](https://github.com/unifi-utilities/unifi-common/blob/main/manual-install/install.sh) (Offline installer)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_installation["Installation"]
  node_online_installer["Online installer<br/>[remote_install.sh]"]
  node_offline_installer["Offline installer<br/>[install.sh]"]
end

subgraph group_runtime["Boot runtime"]
  node_systemd_service["Boot service<br/>[udm-boot.service]"]
  node_boot_scripts["Startup scripts"]
  node_boot_work["Boot-time work"]
end

node_operator(("Device operator"))
node_unifi_device["UniFi device"]

node_operator -->|"runs online"| node_online_installer
node_operator -->|"runs offline"| node_offline_installer
node_operator -->|"copies service to"| node_unifi_device
node_online_installer -->|"installs"| node_systemd_service
node_offline_installer -->|"sets up"| node_systemd_service
node_systemd_service -->|"runs at startup"| node_boot_scripts
node_boot_scripts -->|"perform"| node_boot_work
node_unifi_device -->|"hosts"| node_systemd_service

click node_online_installer "https://github.com/unifi-utilities/unifi-common/blob/main/remote_install.sh"
click node_offline_installer "https://github.com/unifi-utilities/unifi-common/blob/main/manual-install/install.sh"
click node_systemd_service "https://github.com/unifi-utilities/unifi-common/blob/main/udm-boot.service"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_online_installer,node_offline_installer toneBlue
class node_systemd_service,node_boot_scripts,node_boot_work toneAmber
class node_operator,node_unifi_device toneIndigo
```

## Components

### Installation

- [Online installer](https://github.com/unifi-utilities/unifi-common/blob/main/remote_install.sh): `remote_install.sh`
- [Offline installer](https://github.com/unifi-utilities/unifi-common/blob/main/manual-install/install.sh): `manual-install/install.sh`

### Boot runtime

- [Boot service](https://github.com/unifi-utilities/unifi-common/blob/main/udm-boot.service): `udm-boot.service`
- **Startup scripts**
- **Boot-time work**

### Other components

- **Device operator**
- **UniFi device**

## Connections

- Device operator → Online installer: runs online
- Device operator → Offline installer: runs offline
- Device operator → UniFi device: copies service to
- Online installer → Boot service: installs
- Offline installer → Boot service: sets up
- Boot service → Startup scripts: runs at startup
- Startup scripts → Boot-time work: perform
- UniFi device → Boot service: hosts
