$ account wildfirechat
Wildfire Chat IM Server is a production-grade instant messaging backend built on a heavily customized Moquette MQTT broker. It provides MQTT-based client connectivity, HTTP REST APIs for admin/robot/channel management, and supports features like private/group/chatroom/channel messaging, file/media storage (local or Qiniu), push notifications, sensitive word filtering, conference/voice-video events, social moments, and multi-domain mesh federation. The architecture is a multi-module Maven project (broker, common, sdk, distribution) using Netty for networking, Hazelcast for distributed caching, and MySQL/H2 with Flyway migrations for persistence. The codebase demonstrates solid engineering with annotation-driven routing, protobuf message serialization, and a clean SDK for server-side integration. However, it suffers from a god-class in MemoryMessagesStore, duplicated configurations, vendored Netty MQTT codec, and some security concerns (hardcoded keys, weak XOR encryption). It is actively maintained with frequent schema migrations and feature additions, but the licensing is ambiguous (multiple license files) and documentation is primarily in Chinese.