Skip to content

Architektur

ATLAS wird als modulares TypeScript-Monorepo entwickelt.

Pakete

PaketAufgabe
coreZentrale Verträge und grundlegende Typen
foundationAllgemeine Basiskomponenten und gemeinsame Infrastruktur
runtimeLaufzeitumgebung, Services und Service-Container
rendererDarstellungsschicht und Renderer-Abstraktionen
homeassistantGeplante Integration mit Home Assistant
themeGemeinsame Theme- und Design-Grundlagen
devtoolsDiagnose- und Entwicklungswerkzeuge

Architekturprinzipien

ATLAS folgt mehreren festen Grundsätzen:

  • klare Trennung von Verträgen und Implementierungen
  • kleine, austauschbare Module
  • testbare Komponenten
  • Abhängigkeiten über definierte Schnittstellen
  • Referenzimplementierungen für zentrale Dienste
  • langfristig erweiterbare Plugin-Architektur

Events

Die Event-Schicht umfasst unter anderem:

  • Event
  • EventBus
  • Handler
  • Subscription
  • Filter
  • Publisher
  • Subscriber

Der DefaultEventBus dient als Referenzimplementierung.

Services und Dependency Injection

Die Runtime Foundation enthält die Grundlagen für:

  • Service-Beschreibungen
  • Service-Registrierung
  • Dependency Injection
  • Service-Container
  • kontrollierte Auflösung von Abhängigkeiten

Geplante Nutzung

ATLAS soll später als Basis dienen für:

  • Home-Assistant-Werkzeuge
  • Dashboard-Komponenten
  • Diagnoseanwendungen
  • Plugin-basierte Desktop- oder Webanwendungen
  • die geplante Lovelace UV Card