Inspiration
For over fifteen years, I have been creating video content focused on teaching programming—a journey that has not only fueled my passion but also driven my innovation. Over time, as I ventured into live streaming, I found myself continually crafting bespoke tools to streamline my broadcasts. These ranged from sound mixers and timers to sophisticated lighting automation systems, each tailored specifically to enhance my setup and viewer engagement.
However, these tools were intricately customized for my use, making them challenging to adapt for others. This became apparent when fellow streamers, intrigued by the efficiency and effectiveness of my tools, started requesting access to them. It sparked a pivotal question: How could I make such tools accessible and user-friendly for those without a technical background?
This challenge led to the conception of OctoPatch—a visual tool designed to democratize streaming technology. OctoPatch embodies the idea of connecting everything seamlessly, allowing even non-technical users to customize their streaming experience as easily as drawing lines between nodes. This vision for OctoPatch is not just about simplifying technology, but about empowering creators to focus more on their content and less on the complexities of their setup.
What it does
OctoPatch is designed to integrate various streaming tools into one manageable platform using plugins. Each plugin exposes the features of a system as primitive switches that any user can control. For instance, OBS features like the stream's on/off status are made accessible, and VoiceMeeter exposes all its volume and equalizer sliders. Similarly, MIDI devices make all their controls available as properties.
For Twitch specifically, OctoPatch enables the extraction of crucial data such as the number of viewers and the online status of streamers. It also facilitates the triggering of various actions directly within the Twitch platform, enhancing interaction and control during live streams.
Users see these controls as nodes within OctoPatch, where they can connect nodes to synchronize values unidirectionally. This ensures that any change on one end is instantly updated on the other. These integration capabilities mean that whether you’re adjusting a MIDI controller to alter lighting or checking Twitch stats, all actions happen in real time, simplifying how you manage and interact with your streaming setup.
How we built it
OctoPatch began as a passion project several years ago, driven by my interest in creating tools that streamline and enhance the streaming experience. Initially, the project served as a platform to experiment with new technologies and demonstrate them during live streams. This exploration led to an ever-expanding set of features, but over time, the project's scope grew too large, and without a clear motivation to release it, OctoPatch remained unpublished.
As the years passed, the technology stack I used evolved, and the project, while rich in features, became unwieldy. It was a beautiful creation but lacked direction and purpose, which caused the development to stall. This changed when I learned about the Twitch Hackathon. The event reignited my passion for OctoPatch, providing the perfect incentive to refine and launch the tool. It was, after all, always intended for streamers, making the hackathon the ideal venue to showcase its capabilities.
Over the last two months, I have been diligently scaling down the feature set to the most essential and impactful tools. This focused approach has helped to distill OctoPatch into a small, yet powerful tool that fulfills its original purpose—helping streamers manage their setups more efficiently and creatively. This hackathon has not only motivated me to finally launch OctoPatch but also to refine it into a tool that streamers can rely on without needing to understand the complexities behind it.
Challenges I ran into
One of the biggest hurdles in the development of OctoPatch for the Twitch Hackathon was the tight timeframe. I had just two months to turn a sprawling, semi-finished project into a presentable tool. The challenge was to distill a vast array of partially completed functionalities into a coherent set that could effectively demonstrate the tool’s potential.
Given the extensive feature set that had been built over the years, deciding which features to finalize and include was not only technically demanding but also critical to ensuring the tool could be showcased effectively at the hackathon. Unfortunately, the crunch time meant that some aspects of OctoPatch are not as polished as I would have liked. The tool is not fully rounded yet and may crash unexpectedly in some scenarios.
However, the primary goal for this initial presentation was to showcase the potential of OctoPatch and gather valuable feedback from both the jury and potential users. This feedback will be crucial for further refining the tool and making it more stable and user-friendly.
Accomplishments That I'm Proud Of
As a professional software developer, I am engaged in creating and refining technology on a daily basis. However, the development of OctoPatch brought a unique sense of accomplishment, particularly in achieving effective bidirectional synchronization within the tool. I am especially proud of how well the endless loop prevention mechanism has worked, ensuring that the system remains stable and efficient even as it handles complex, real-time data flows between various software and hardware interfaces.
This project was not just about building another tool; it was about crafting a solution that could dynamically adapt to the diverse needs of streamers and content creators, providing them with a reliable platform to enhance their creative processes. Seeing the core concept of bidirectional synchronization not only function effectively but also improve users’ streaming setups in real time has been incredibly rewarding. This success reinforces my belief in the potential of OctoPatch to make a significant impact in the streaming community.
What's Next for OctoPatch
The current version of OctoPatch is just the beginning. Here’s what I plan to add to make it even better:
- Visual Node Editor: Soon, you'll be able to set up connections simply by dragging and dropping nodes in a fully visual interface. This will make the tool easier and more intuitive to use.
- Open API: I'm working on an open API that will allow anyone to write and integrate their own nodes, vastly increasing the tool’s flexibility and the personalization it offers.
- Multiple Patch Panels per Instance: To handle more complex setups, you’ll be able to manage several patch panels within a single OctoPatch instance.
- Nested Patches: This will enable users, including those without programming skills, to configure complex setups in advance, making sophisticated stream setups accessible to everyone.
- Wormholes: These will allow for node control across different computers, expanding the scope of what you can manage with OctoPatch.
These updates are aimed at making OctoPatch more robust and user-friendly, ensuring it can support a wider range of streaming and content creation activities.

Log in or sign up for Devpost to join the conversation.