xiaozhi-esp32-server-java  by joey-zhou

Java server for ESP32 device management, offering a full-stack solution

created 5 months ago
704 stars

Top 49.5% on sourcepulse

GitHubView on GitHub
Project Summary

This project provides a comprehensive, enterprise-grade Java backend and frontend management platform for the Xiaozhi ESP32 project. It targets individual developers and businesses needing robust device management, AI-powered voice interaction, and scalable IoT solutions, offering a feature-rich, user-friendly interface for controlling and monitoring smart hardware.

How It Works

The system leverages a modern, reactive architecture with Spring Boot and WebFlux for the backend, ensuring high throughput and concurrency. The frontend is built with Vue.js and Ant Design for a responsive, cross-device compatible user experience. Data is stored in MySQL. Key advantages include non-blocking I/O for efficient handling of multiple concurrent device connections and real-time data streams via WebSockets, supporting a wide array of LLMs, voice recognition, and TTS engines.

Quick Start & Requirements

  • Installation: Local source code compilation or Docker deployment.
  • Prerequisites: Java Development Kit (JDK), Maven, MySQL database, Node.js (for frontend). Specific LLM API keys and potentially cloud services (e.g., Volcanic Engine, Alibaba Cloud for voice cloning) are required for certain features.
  • Resources: Requires a server environment for the backend and database. Docker deployment simplifies setup.
  • Links: Deployment Documentation, Firmware Compilation

Highlighted Details

  • Supports multiple LLM providers (OpenAI, Zhipu AI, Xunfei Spark, Ollama) and voice cloning services.
  • Features bidirectional streaming for real-time voice interaction and local offline speech recognition (Vosk).
  • Includes IoT device control via voice commands and integration with platforms like Coze and Dify for advanced AI agents.
  • Built with a modular, loosely coupled architecture for extensibility and maintainability.

Maintenance & Community

  • Active development with a clear roadmap including features like chat data visualization, multi-role hybrid modes, and memory management.
  • Community support via QQ group (790820705). Custom development services are available.

Licensing & Compatibility

  • The specific license is not explicitly stated in the README, but the project appears to be open-source. Compatibility for commercial use or closed-source linking would require clarification on the license.

Limitations & Caveats

The project is under active development, with many advanced features like multi-modal interaction, voice biometrics, and Home Assistant integration still marked as "in development." The README does not specify the exact license, which could impact commercial adoption.

Health Check
Last commit

18 hours ago

Responsiveness

Inactive

Pull Requests (30d)
1
Issues (30d)
14
Star History
375 stars in the last 90 days

Explore Similar Projects

Feedback? Help us improve.