Skip to content

Technology Stack

This page summarizes the main technologies IoT DC3 currently runs on and recommends for local development. Treat pom.xml, dc3-web/package.json, and docs/package.json as the source of truth for exact versions; the README keeps only a short reader-facing summary.

Backend and Center Services

AreaTechnologiesPurpose
Language and frameworksJava 21 · Spring Boot 4 · Spring Cloud 2025Runtime foundation for the gateway, center services, and driver processes
AI integrationSpring AI 2.0Agentic Center integration with OpenAI-compatible providers, Tool Calling, and MCP workflows
Web and APISpring WebFlux · Spring Security · springdoc-openapiHTTP APIs, authentication and authorization, and aggregated API docs
Service collaborationgRPC · Protobuf · Facade interfacesStrongly typed contracts between center services
BuildMaven 3.9+Multi-module build, tests, packaging, and dependency version management

Data, Messaging, and Scheduling

AreaTechnologiesPurpose
Primary storagePostgreSQLBusiness data, tenants, resources, device models, and runtime data
Time-series and extensionsTimescaleDB · AGE · pgvectorPoint history, graph capabilities, and vector capabilities
ORM / data accessMyBatis-PlusPersistence access and paginated queries at the DO layer
Message busRabbitMQAsynchronous point value reports, command dispatch, and buffering between drivers and the data center
Cache and schedulingCaffeine · QuartzIn-process caching, scheduled jobs, and task orchestration

Frontend, Docs, and Automation

AreaTechnologiesPurpose
Web frontendVue 3 · TypeScript 6 · Vite 8 · Element PlusManagement console under dc3-web/
VisualizationAntV G2/G6Dashboard charts and relationship visualizations
Docs siteVitePress · MermaidThe current docs/ site, architecture diagrams, and flow diagrams
CLI automationTypeScript · pnpm · VitestSibling dc3-cli/ project, a Gateway-oriented command-line client
Container deploymentPodman · Docker ComposeLocal dependencies, dev stack, app stack, and optional observability stack

Continue Reading

Released under the AGPL-3.0 License