# Swift Playgrounds - Pixelblaze

**URL:** <https://forum.electromage.com/t/swift-playgrounds-pixelblaze/1154>\
**Category:** Ideas and Tips\
**Created:** [April 8, 2021, 6:54pm UTC](https://forum.electromage.com/t/swift-playgrounds-pixelblaze/1154 "2021-04-08T18:54:36Z")\
**Posts on this page:** 1\
**Showing post:** 2

<div class="post-metadata">

**Author:** ![zranger1](https://forum.electromage.com/user_avatar/forum.electromage.com/zranger1/32/301_2.png) [@zranger1](https://forum.electromage.com/u/zranger1)\
**Post date:** [April 9, 2021, 3:52pm UTC](https://forum.electromage.com/t/swift-playgrounds-pixelblaze/1154/2 "2021-04-09T15:52:19Z")

</div>

Disclaimer: I haven’t had an Apple machine for development since Objective-C was king, and have only a passing familiarity with Swift, and none at all with the playground. Still…

The Web UI uses both http and websockets protocols, a couple of different data encodings, plus decompression of the pattern binaries to access preview images if you want them. It’s a non-trivial undertaking. I’d do it in stages, probably starting with using the websocket interface to control the Pixelblaze.

You can get information on protocols from pixelblaze-client and the [Firestorm source code.](https://github.com/simap/Firestorm) I’d also recommend looking at @nick_w’s [async python library](https://forum.electromage.com/t/new-python-library-posted/1130), because the async model is a better fit for Swift, and it also has some code dealing directly with binary pattern files.

---

_[View the full topic](https://forum.electromage.com/t/swift-playgrounds-pixelblaze/1154)._
