Skip to content

EdogawaCoder/project-edragorn-hub

Repository files navigation

Edragorn Control Hub

Central control and monitoring service for the Edragorn Mecha project.
This hub receives telemetry, stores it in PostgreSQL, and provides health and monitoring endpoints.
Future phases will add MQTT ingestion, command handling, and real-time dashboards.


Features (Phase 0)

  • Docker Compose infrastructure:
    • PostgreSQL 16
    • Eclipse Mosquitto (MQTT broker)
  • Spring Boot 3 (Java 21) base application
  • Flyway for database migrations
  • Health check via Spring Boot Actuator
  • Structured JSON logs (Logback + Logstash encoder)

Project structure

edragorn-control-hub/
├─ infra/               # Docker Compose (Postgres + Mosquitto)
├─ app/                 # Spring Boot application
└─ web-ui/              # (future) Frontend dashboard

How to run

  1. Start infrastructure (Postgres + Mosquitto):
    cd infra
    docker compose up -d
  2. Run the application:
    cd ../app
    ./mvnw spring-boot:run
  3. Check health:
    curl http://localhost:8082/actuator/health
    # {"status":"UP"}

Tech stack

  • Java 21 / Spring Boot 3
  • PostgreSQL 16
  • Flyway
  • Mosquitto (MQTT broker)
  • Docker Compose
  • Testcontainers
  • Micrometer + Actuator

Roadmap

  • Phase 0 – Infrastructure & health ✅
  • Phase 1 – Telemetry via HTTP (store & query)
  • Phase 2 – Telemetry via MQTT (IoT ingestion)
  • Phase 3 – Command handling with FSM safety checks
  • Phase 4 – Real-time dashboards (WebSockets / SSE)
  • Phase 5 – Multi-mecha orchestration

エドラゴン・コントロールハブ

エドラゴン・メカの中央制御・監視サービスです。
このハブはテレメトリを受信し、PostgreSQL に保存し、ヘルスチェックと監視エンドポイントを提供します。
今後のフェーズでは、MQTT 取込み、コマンド処理、リアルタイムダッシュボードを追加予定です。


機能 (フェーズ0)

  • Docker Compose インフラ:
    • PostgreSQL 16
    • Eclipse Mosquitto (MQTT ブローカー)
  • Spring Boot 3 (Java 21) ベースアプリケーション
  • Flyway による DB マイグレーション
  • Spring Boot Actuator によるヘルスチェック
  • JSON 構造化ログ (Logback + Logstash encoder)

プロジェクト構成

edragorn-control-hub/
├─ infra/               # Docker Compose (Postgres + Mosquitto)
├─ app/                 # Spring Boot アプリ
└─ web-ui/              # (将来)フロントエンド・ダッシュボード

実行方法

  1. インフラ起動 (Postgres + Mosquitto):
    cd infra
    docker compose up -d
  2. アプリ起動:
    cd ../app
    ./mvnw spring-boot:run
  3. ヘルスチェック:
    curl http://localhost:8082/actuator/health
    # {"status":"UP"}

技術スタック

  • Java 21 / Spring Boot 3
  • PostgreSQL 16
  • Flyway
  • Mosquitto (MQTT ブローカー)
  • Docker Compose
  • Testcontainers
  • Micrometer + Actuator

ロードマップ

  • フェーズ0 – インフラ & ヘルス ✅
  • フェーズ1 – HTTP 経由のテレメトリ (保存とクエリ)
  • フェーズ2 – MQTT 経由のテレメトリ (IoT 取込み)
  • フェーズ3 – FSM セーフティチェック付きコマンド処理
  • フェーズ4 – リアルタイムダッシュボード (WebSockets / SSE)
  • フェーズ5 – 複数メカのオーケストレーション

About

Personal project of mecha Edragorn's hub

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages