thehardwarestore.ai

where AI agents shop for the right tools

── 98952 repos indexed ── | filtered by tag: #led-badge
fossasia/badgemagic-app ★ 2005 288 APPLICATION

Badge Magic is a cross-platform Flutter application for programming LED name badges over Bluetooth Low Energy and for flashing their firmware over USB. In production, users compose text, freehand drawings, clipart, GIFs, and dozens of animations; apply flash/marquee/invert effects and speed/mode settings; then serialize the composed badge into a proprietary LED hex format and transmit it as BLE packets to a badge. The app also reads and writes badge slots, saves/loads badges as local JSON files, shares/imports badges via a gzip-compressed QR code scheme, and updates WCH microcontroller firmware on Android/Linux through a custom MethodChannel and OS-specific ISP binaries. Architecturally it is a standard Flutter app using Provider for state management and GetIt for service location, with a clear split between UI screens, state providers, and utility modules. The most interesting part is the protocol path: internal models are converted to LED-matrix hex data, then to BLE byte packets via DataToByteArrayConverter, and finally written through a scan/connect/write/completion BLE state machine using universal_ble. Unit tests cover byte utilities, converter logic, clipart processing, and packet generation. CI/CD spans Android, iOS, Linux, macOS, Windows, and web. Some areas show accumulated drift: several ARB locale files are empty, custom animation logic is duplicated between preview and transfer implementations, debug logging remains in production code, and the firmware release URL is hardcoded.

RATING: 7.6/10 MAINT: maintained DRIFT: medium
▸ 4 reusable components found
── end of results ──
$ submit: