#6060th of 81 in VoiceFor voice, speech and music

xiaozhi-esp32-server-java

Java backend and admin console for Xiaozhi ESP32 voice devices

Stars
1.4k
License
MIT
Last commit
Nov 2026
Last release
Apr 2026
Language
Java
Stars, last 29 weeks+217
21 Apr 2026: 1,205 stars28 Apr 2026: 1,213 stars5 May 2026: 1,221 stars12 May 2026: 1,229 stars19 May 2026: 1,239 stars26 May 2026: 1,244 stars2 Jun 2026: 1,252 stars9 Jun 2026: 1,260 stars16 Jun 2026: 1,271 stars23 Jun 2026: 1,274 stars30 Jun 2026: 1,282 stars7 Jul 2026: 1,289 stars14 Jul 2026: 1,296 stars21 Jul 2026: 1,300 stars28 Jul 2026: 1,304 stars4 Aug 2026: 1,308 stars11 Aug 2026: 1,313 stars18 Aug 2026: 1,317 stars25 Aug 2026: 1,325 stars1 Sept 2026: 1,328 stars8 Sept 2026: 1,330 stars15 Sept 2026: 1,342 stars22 Sept 2026: 1,351 stars29 Sept 2026: 1,353 stars6 Oct 2026: 1,356 stars13 Oct 2026: 1,367 stars20 Oct 2026: 1,381 stars27 Oct 2026: 1,394 stars3 Nov 2026: 1,411 stars10 Nov 2026: 1,422 stars

1,205 on 21 Apr 20261,422 on 10 Nov 2026

From GitHub's daily star counts.

Checked on GitHub.

Overview

Java server for Xiaozhi ESP32 hardware, split into two Spring Boot processes: an admin backend (port 8091, REST API, users, devices, OTA) and a dialogue service (port 8092, WebSocket/MQTT audio streams and the STT, LLM, TTS pipeline). It includes a Vue web console and integrates OpenAI, Zhipu, Xunfei, Ollama, Dify and Coze, plus local and cloud speech engines. Data is stored in MySQL, Redis and Qdrant.

Who it is for: Owners of Xiaozhi ESP32 devices who want a self-hosted server and admin UI

Strengths

  • Dialogue and admin run as separate processes; dialogue instances register with the server and scale out
  • Local STT/TTS via sherpa-onnx and Vosk, plus Edge TTS and several cloud providers
  • README includes a 100-device concurrency benchmark on 8 cores / 8 GB
  • Covers OTA rollout, MQTT wake-up, voiceprint recognition, RAG, long-term memory and MCP

Weaknesses

  • Some features are not open source; a commercial edition exists
  • README and docs are mostly in Chinese
  • Needs MySQL, Redis and downloaded model/native library files before first run
  • No LLM API key is bundled; you must supply your own to chat

What it needs

  • Compose
  • Needs MySQL 8.0, Redis 7, Qdrant, JDK 21 (source build), Node 22 (source build)
  • Models: OpenAI, Zhipu AI, Xunfei Spark, Volcengine Ark, Ollama
  • port 8084

Quick answers

Is xiaozhi-esp32-server-java open source?

Yes. Its code is on GitHub under the MIT license.

Can you run xiaozhi-esp32-server-java with Docker?

Yes. Its repository has a Docker setup: a Dockerfile, a Compose file or a published image.

Also in Voice

See all 81
Also in Voice
RankProjectScore
1voicestudioDesktop app for voice cloning, dubbing, dictation and audiobooks108k stars+48,895 (+83%) in 30 daysAGPL-3.098 out of 100
2handyOffline push-to-talk dictation app that pastes transcripts into any text field38.4k starsMIT91 out of 100
3whisper.cppC/C++ speech-to-text engine running OpenAI Whisper models locally55.1k stars+858 (+1.6%) in 30 daysMIT90 out of 100
#4xiaozhi-esp32ESP32 firmware for a voice chatbot with MCP device and cloud tool control33.1k starsMIT83 out of 100
#5buzzOffline desktop app for transcribing and translating audio with Whisper22.6k stars+735 (+3.4%) in 30 daysMIT83 out of 100