Home

BigFred – Architecture (split documents)

BigFred – Architecture (split documents)

This folder holds the BigFred architecture proposal, split into one file per top-level section. The parent file ../README.md is the entry point with the full table of contents.

Section numbering (§3a.4, §7b.1, …) is preserved in heading text so cross-references inside the prose still work via Ctrl+F. Large sections that grew beyond ~250 lines are further split into subfolders; each subfolder carries its own README.md with its sub-TOC.

Terminology

Goals

Usage context

LAN-only hub deployment, scale (~100–150 vehicles), low latency, non-technical end users, simple Raspberry Pi setup, and proportionate security (PIN + WPA, no HTTPS).

Technology Stack

High-Level Architecture

Repository Layout

Domain Model (REL — Data Mapper)

Communication Protocol (REST + WebSocket)

Backend Components

Frontend Components

Cross-Cutting Concerns

Internationalization (i18n)

Offline-first frontend assets

Bundled fonts/CSS/JS, no CDN at runtime, check-offline-bundle gate.

Authentication, Roles & Authorization

API Keys & Built-in MCP Server

Makefile Additions

Delivery Order (Milestones)

Acceptance Criteria

Process Supervisor (Supervisord)

Non-root process groups, Go templates, hot reload, daemon lifecycle.

DCC Bus Daemon (dcc-bus)

Per-(layout × command station) sibling daemon for the throttle data plane; session-aware, security-policy-driven, Redis-cached.

Reliability — reconnect & retry

WebSocket backoff, command retries, DMS grace, mobile screen wake.