# FastBee: a full-stack IoT platform with the MQTT broker built in

> A Spring Boot and Vue platform for small teams and hobbyists that bundles its own Netty MQTT server, so there is no EMQX to deploy before you can connect a sensor.

**kerwincui/FastBee** — FastBee开源物联网平台，简单易用，可用于搭建物联网平台以及二次开发和学习。适用于智能家居、智慧办公、智慧社区、农业监测、水利监测、工业控制等。

- Repository: https://github.com/kerwincui/FastBee
- Website: http://fastbee.cn
- Stars: 2,295 · Forks: 620
- Language: Java
- License: AGPL-3.0
- Published: 2026-10-07 · Updated: 2026-10-07 · Language: en
- Canonical page: https://hysenlabs.com/projects/kerwincui-fastbee

## The broker is the part other platforms make you install first

Almost every IoT platform assumes you already have an MQTT broker. That is a real operational tax, because you now maintain EMQX or Mosquitto or HiveMQ before your first sensor sends anything, and you have to get authentication and topic design right before you can debug anything.

FastBee removes the prerequisite. The README states that the MQTT broker is built in on Netty and that no additional third-party service deployment is needed, and the feature table repeats it as its own row. The server side runs on Spring Boot with MyBatis, Spring Security, JWT, MySQL, Redis, TDengine and Netty.

That is the single most useful thing about the project, and it is worth being clear that it is a choice rather than a virtue. A built-in broker means one process to run and one thing to secure. It also means the broker's configuration lives inside the application rather than in a separate system you can operate independently.

The stated audience is small and medium enterprises and individual developers, and the scenario list runs from smart homes and smart offices through smart communities, agricultural monitoring, water conservancy monitoring and industrial control.

## One install script, and a default password you should change

Deployment is two prerequisites and one command. You need Docker and Docker Compose on the server, then you fetch and run the installer, which pulls and starts everything after you pick the open source version.

```bash
sudo wget -c https://hub.fastbee.cn/resource/install.sh && bash ./install.sh
```

After that you open the console at your server's address and port and log in with admin and admin123, which are the credentials the README documents. That default pair is worth changing immediately on anything reachable from a network.

The README also carries a disclaimer at the top that is more specific than most Chinese open source projects bother with: the project is for personal study and use, you should keep the source updated to patch vulnerabilities, and there is a link to a page about a vertical privilege escalation vulnerability fix. A platform that ships default admin credentials and an authorization bug page is telling you something about the security posture, and it is telling you directly rather than leaving you to find out.

The tree is small and readable: springboot/ for the server, vue/ for the web console, docker/ and images/ for deployment, plus RoadMap.md.

## Product, device and thing model in Chinese terminology

The feature table is organized around a three-level hierarchy that is worth understanding before you read the rest, because the vocabulary translates imperfectly.

产品管理, product management, creates a product, defines its thing model and sets the device authentication method. 设备管理, device management, handles registration, grouping, real-time status monitoring, remote control, operation logs and device sharing. 物模型管理, thing model management, standardizes the properties, functions and events that give the platform and the device a shared vocabulary for data.

This is the Alibaba and Huawei IoT convention rather than the MQTT convention. In plain MQTT you publish to topics. In a thing model you describe a product with typed properties, functions and events, and the platform handles the mapping. That abstraction is what lets one application layer treat a temperature sensor, a smart switch and a water meter through the same interface.

The cost of the abstraction is that you cannot just connect a random MQTT publisher and expect it to appear. It has to be described as a product first, with the right properties and authentication.

Two other rows complete the picture. 规则脚本, rule scripts, process raw data from devices and from platform commands before forwarding it, which is how you adapt a device that speaks its own dialect. And permissions are built on the RuoYi framework, described in the README as a mature permission framework, giving users, roles, departments, posts and operation logs.

## Databases, video, and the parts that are not open

The multi-data support is broader than most projects at this level claim. Relational storage covers MySQL, PostgreSQL and MSSQL. Time-series storage covers TDengine, ioTDB and InfluxDB. Being able to point the platform at PostgreSQL instead of MySQL matters for organizations that have standardized on it, and choosing among the three time-series options is the decision you will actually have to make.

Video is supported through the GB/T 28181 national standard protocol, which gives live video and device management. That is the piece most relevant to the industrial control and community scenarios the project targets.

The hardware side is where the project is most concrete. SDKs and examples exist for ESP-IDF, Arduino, Raspberry Pi and the Air724 board, with FreeRTOS, Python and Lua mentioned among the languages. The device side is described as compatible with ESP32, ESP8266, Raspberry Pi and Air724 hardware. The README links to a separate SDK repository on Gitee and shows an ESP32 board image.

The important limitation is stated near the bottom rather than the top: the open source version supports only the MQTT protocol. The online demo is of the commercial version, and the note says the open build is limited in this way. Commercial use of the open version also requires a purchased licence, since it is AGPL-3.0 and the README points commercial users at a sponsor page for the commercial version.

## Client apps, English docs, and a four year gap in releases

The client side is unusually broad for a project of this size. There is a web console on Vue and ElementUI, and a mobile app built with uniapp covering WeChat mini programs, Android, iOS and H5, using uView and uChart. The mobile and hardware SDK code lives in separate Gitee repositories under the beecue organisation rather than in this one, so this repository is the server and web console only.

An English README is provided as README.en.md alongside the Simplified Chinese original, which is more than many projects of this origin offer, though the documentation site at fastbee.cn is the substantive reference and is in Chinese.

The release history needs a caveat. There is one tagged release, v1.2.1, published on 2022-08-17, and its release name is wumei-smart v1.2.1 rather than FastBee, which suggests the tag tracks a related commercial product rather than the open source repository. Meanwhile the code was pushed on 2026-08-13 and there are 620 forks against 2295 stars and only 5 open issues.

So the project is active in the sense that commits land, and its GitHub releases tell you almost nothing about which version you are running. There is a RoadMap.md at the root for planning, and QQ groups are listed for support, which is a reasonable signal about where answers come from.

## When this is the right choice

FastBee makes sense when you want a working IoT console quickly and you would rather not assemble the pieces. The built-in broker, the thing model, the multi-client apps and the hardware SDKs together are more than most hobby projects assemble in a weekend, and the single install script reflects that.

It makes less sense if you need the full feature set, because some of it is behind the commercial version, and the open build's MQTT-only limitation is real. It also makes less sense if MQTT broker choice matters to you, since a built-in broker is a constraint once you have multiple environments.

And it makes less sense if you need long-term maintenance guarantees from an English-language community. The documentation site, the support channels and the SDK hosting are Chinese-language and China-hosted, the licence terms differ between open and commercial, and the GitHub release tags are four years stale.

For a Chinese-language team building a smart home or agricultural monitoring product, the balance is likely favourable. For anyone else, the honest first step is reading the documentation site feature by feature and confirming that what you need is in the open version rather than the demo.

## Conclusion

FastBee's real argument is the missing prerequisite. Most IoT platforms assume you already run an MQTT broker, and FastBee removes that step by shipping a Netty-based broker inside the same application, which is what makes a single install script a plausible starting point. The cost is an AGPL licence on the open version with commercial use pointed at a paid licence, a commercial demo that supports more than the open build, and a release tag last published in 2022 despite commits in August 2026. Read the feature table against what you actually need before installing, since time-series support means choosing between TDengine, ioTDB and InfluxDB, and that choice is yours to make.

## FAQ

### What does FastBee do?

It is a full-stack IoT platform covering product and device management, a thing model for defining device properties, functions and events, rule scripts for transforming device data, video over GB/T 28181, and clients for web, WeChat mini programs, Android, iOS and H5. The intended scenarios include smart homes, smart offices, agricultural monitoring and industrial control.

### Does FastBee need a separate MQTT broker?

No. The broker is built in on Netty and the README states that no additional third-party MQTT service such as EMQX needs to be deployed. That is the main reason the platform installs with a single script, and the main thing you give up, since the broker is configured inside the application rather than operated separately.

### Which databases does FastBee support?

Relational storage works with MySQL, PostgreSQL and MSSQL, and time-series storage with TDengine, ioTDB and InfluxDB. You choose which time-series database to run, which is the main configuration decision once the platform is up.

### Which hardware does FastBee support?

ESP32, ESP8266, Raspberry Pi and Air724 boards are named as compatible, with SDKs and examples for ESP-IDF, Arduino, Raspberry Pi and Air724 across FreeRTOS, Python and Lua. The SDK code is hosted in a separate Gitee repository rather than in this one.

### Can I use FastBee commercially?

The open version is AGPL-3.0 and the README points commercial use at a purchased commercial version licence. The online demo is of the commercial version, and the README notes that the open source version supports only the MQTT protocol.

## Sources

- [kerwincui/FastBee on GitHub](https://github.com/kerwincui/FastBee)
- [License: AGPL-3.0](https://github.com/kerwincui/FastBee/blob/master/LICENSE)
- [Project website](http://fastbee.cn)
- [README](https://github.com/kerwincui/FastBee/blob/master/README.md)
- [Releases](https://github.com/kerwincui/FastBee/releases)

---

Hysen Labs editorial analysis, written from the project's own repository and release notes. Cite the canonical page: https://hysenlabs.com/projects/kerwincui-fastbee
