HALO Architecture Overview

HALO is designed as a local-first, modular platform that coordinates home automation, security, and productivity workflows. The system favors clear boundaries between infrastructure, UI, AI reasoning, and device control.

High-Level Components

  • Nexus (Infrastructure): Docker-based runtime, ingress, storage, workflows, and observability
  • Omnia (UI + API): Dashboard UI and backend for widgets and profiles
  • Apollo (AI): Separate hardware providing LLM reasoning and tool calling
  • Home Assistant: Device control and state management
  • Frigate: Computer vision and security events

See the Systems section for deep dives into each component.

Networks and Access

  • frontnet: Public-facing ingress via Traefik
  • appnet: Service-to-service communication
  • dbnet: Restricted network for database access

Requests enter via Traefik and are routed to backend services. Real-time messaging uses MQTT and WebSockets where applicable.

Data Flow

  1. User interacts with Omnia UI (widgets)
  2. Omnia API/n8n orchestrate workflows and API calls
  3. Apollo performs reasoning and tool-calls (HA, Frigate, n8n)
  4. Results and state changes propagate back to UI via APIs/WebSockets

Repositories and Sources of Truth

  • HALO (this repo): Public documentation and specs (GitHub Pages)
  • Nexus: Deployment, Compose files, service configuration – https://github.com/dcampman/nexus
  • Omnia Widget Template: New widget scaffolding – https://github.com/dcampman/omnia-widget-template

For concrete container/service details, consult the Nexus repository docs:

  • Containers catalog – https://github.com/dcampman/nexus/blob/main/docs/containers.md
  • Architecture notes – https://github.com/dcampman/nexus/blob/main/docs/nexus-architecture.md

Diagram

Container traffic


Back to top

Copyright © 2024-2026 HALO Project. All rights reserved.

This site uses Just the Docs, a documentation theme for Jekyll.