# BALLSMASH - peer-to-peer webcam game

**URL:** <https://forum.babylonjs.com/t/ballsmash-peer-to-peer-webcam-game/57549>\
**Category:** Demos and projects\
**Created:** [April 1, 2025, 11:51am UTC](https://forum.babylonjs.com/t/ballsmash-peer-to-peer-webcam-game/57549 "2025-04-01T11:51:41Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![ozRocker](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/ozrocker/32/186_2.png) [@ozRocker](https://forum.babylonjs.com/u/ozRocker)\
**Post date:** [April 1, 2025, 11:51am UTC](https://forum.babylonjs.com/t/ballsmash-peer-to-peer-webcam-game/57549/1 "2025-04-01T11:51:41Z")

</div>

![thumbnail](https://us1.discourse-cdn.com/flex024/uploads/babylonjs/original/3X/5/f/5fe872cb58bd21058ddfe94806750f3327ac7b9c.jpeg)

I just made a game that you play against another person with the option of turning on webcam or mic for a more sociable experience. I’m experimenting a lot with webRTC to make games that you can enjoy with another person.

Demo video here - [https://www.youtube.com/shorts/WPmxwgPxniA](https://www.youtube.com/shorts/WPmxwgPxniA)

You can try the game here: [https://punkoffice.com/ballsmash](https://punkoffice.com/ballsmash)

For this I used:

- React
- Typescript
- NodeJS back-end
- BabylonJS
- PeerJS (webRTC library)

---

<div class="post-metadata">

**Author:** ![Symbitic](https://sea2.discourse-cdn.com/flex024/user_avatar/forum.babylonjs.com/symbitic/32/3083_2.png) [@Symbitic](https://forum.babylonjs.com/u/Symbitic)\
**Post date:** [April 16, 2025, 6:06pm UTC](https://forum.babylonjs.com/t/ballsmash-peer-to-peer-webcam-game/57549/2 "2025-04-16T18:06:57Z")

</div>

Cool! Is this open-source? I’d love to add it to awesome-babylonjs.
