# More convenient WebSockets testing?

**URL:** https://forum.makecode.com/t/more-convenient-websockets-testing/45688
**Category:** Arcade
**Created:** [September 2, 2026, 9:36pm UTC](https://forum.makecode.com/t/more-convenient-websockets-testing/45688 "2026-09-02T21:36:36Z")
**Posts on this page:** 3
**Page:** 1

<div class="post-metadata">

### Author: ![Sarge](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/sarge/32/19590_2.png) [@Sarge](https://forum.makecode.com/u/Sarge)
#### Post date: [September 2, 2026, 9:36pm UTC](https://forum.makecode.com/t/more-convenient-websockets-testing/45688/1 "2026-09-02T21:36:36Z")

</div>

I was interested in testing out the [WebSockets](https://forum.makecode.com/t/websocket-extension-experimental/4661) extension with a custom server but it seems that MakeCode only allows WebSocket connections to pass through on a github pages build. This means that testing any minor change requires me to push to repo, make a release and wait for the pages to build, and it makes debugging nearly impossible. Does anyone know if there’s a way to go around this during development? Maybe a way to build makecode locally while allowing for websocket connections? @richard

---

<div class="post-metadata">

### Author: ![richard](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/richard/32/5417_2.png) [@richard](https://forum.makecode.com/u/richard)
#### Post date: [September 2, 2026, 10:11pm UTC](https://forum.makecode.com/t/more-convenient-websockets-testing/45688/2 "2026-09-02T22:11:22Z")

</div>

yeah, you can use the makecode cli! to install:

```auto
npm install -g makecode

```

then clone the repo locally:

```plaintext
git clone https://github.com/pelikhan/pxt-sockets.git
cd pxt-sockets
makecode install

```

and to serve locally:

```auto
makecode serve --force-local

```

the websocket magic is happening inside the `assets/js/custom.js` and `assets/js/loader.js` files, those are the custom js files that are being loaded into the simulator page. the `--force-local` flag here forces the server to use the local loader.js instead of the one that ships with the CLI

---

<div class="post-metadata">

### Author: ![Sarge](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/sarge/32/19590_2.png) [@Sarge](https://forum.makecode.com/u/Sarge)
#### Post date: [September 3, 2026, 2:12am UTC](https://forum.makecode.com/t/more-convenient-websockets-testing/45688/3 "2026-09-03T02:12:30Z")

</div>

Thanks! You have no idea how much time you just saved me lol
