# SCADA for Small Water Systems **A modern, low-egress monitoring and alerting platform for small municipal and private water systems.** This repository contains the full system design, specifications, architecture, and implementation for an intelligent SCADA solution targeted at small water systems (typically < 1,000 connections). The system combines edge computing (Raspberry Pi), hybrid AI models, and a clean multi-tenant web interface to deliver reliable monitoring with minimal data transfer costs. --- ## Project Goals - Provide affordable, professional-grade monitoring for small water systems that cannot justify traditional SCADA costs. - Minimize ongoing data egress costs through intelligent local processing and tiered telemetry. - Enable both non-technical board members and licensed operators to have appropriate visibility and control. - Build a foundation for proactive alerting, anomaly detection, and long-term system health insights using AI. --- ## Key Concepts - **Monitored Objects**: First-class abstraction for pumps, filters, tanks, sensors, etc. - **Tiered Telemetry**: Immutable core signals + optional signals (full telemetry vs alert-only mode). - **Hybrid AI Architecture**: Small edge models for local decisions + larger cloud models for complex reasoning. - **Low-Egress Design**: Heavy summarization locally, rich context only sent during alerts. - **Multi-Tenancy**: Supports both individual system owners and professional operators managing multiple systems. --- ## Repository Structure All project documentation lives under `/docs`: ``` docs/ ├── vision.md ├── architecture/ ├── specs/ ├── hardware/ ├── decisions/ # Architecture Decision Records (ADRs) └── images/ ``` Active development tasks are tracked in `/tasks`. Agent role definitions and swarm coordination live in `/agents` and follow the Hierarchical Agent (HA) methodology defined in this template. --- ## Current Status This project is in the **early architecture and specification phase**. The core vision, use cases, and high-level system design are being finalized before moving into detailed implementation. --- *Maintained by Ty_Tech*