Open-EnergyMesh: Offline-First Distributed Microgrid Orchestration (MVP) Overview - A minimal, open MVP for offline-first distributed microgrid orchestration. - Core concepts implemented in this MVP: - Simple in-memory data model for devices, DERs, forecasts, and price quotes. - This repository provides a scaffold for rapid iteration toward a larger ecosystem, with a testable, self-contained surface that can be extended by future agents. How it maps to the Open-EnergyMesh vision - Data model and APIs: A lightweight in-code model (Device, Inverter, Meter, DER, Forecast, PriceQuote) with a simple EnergyMesh orchestrator. The current tests exercise a basic energy-flow calculation. - Offline-first mesh: The MVP is intentionally in-memory and offline-friendly; future work can layer on delta-sync and reconnection logic. - Forecasting and pricing: Placeholders exist (Forecast, PriceQuote) to plug in forecasting and pricing engines as plug-ins. - Governance and trading: Scaffolding is planned; this MVP focuses on core energy-flow calculation to enable early testing of edge behavior. - Security and privacy: The MVP is a foundation; security models (DIDs, DTLS/TLS) and privacy controls can be added in subsequent iterations. Getting started - Install dependencies: npm install - Run tests: npm test (or ./test.sh) - Source: src/mesh.js defines the in-memory data model and EnergyMesh orchestration. - Tests: test/test.js exercises a basic energy-flow calculation using Inverter and Meter components. Extending the MVP - Add more detailed data models (Event, Trade, Forecast, PriceQuote) and richer flow logic. - Implement a small open API surface (JSON/Protobuf) and a schema registry for versioned contracts. - Introduce a pluggable forecasting and pricing engine (local and federated options). - Build a delta-sync protocol for offline periods and reconnection. - Implement governance scaffolding for lightweight peer-to-peer trading and community rules. Development and contribution - This project adheres to the Open-EnergyMesh vision of interoperability and resilience. - see AGENTS.md for the architectural guidance and testing commands. License - MIT Ready-to-publish marker - A ready-to-publish marker will be placed at the repository root when the project is fully production-ready.