🚀 Uniflow 1.1.18
on October 6, 2025
✨ Darkwood Update: Uniflow 1.1.18 & Darkwood prototypes integrated on uniflow.io
🧩 Uniflow 1.1.18 – The new HtmlFlow component
Uniflow version 1.1.18 introduces a new key component: HtmlFlow. It now allows you to directly display HTML content stored in a context variable — whether it's a text fragment, a visual rendering, or even an iframe dynamically generated by another flow.
This component, developed last week, marks an important step in Uniflow's Flow Based Programming philosophy: making flows autonomous, visual and interactive, without depending on an external interface.
⚙️ Minimal example
// JavascriptFlow const iframe = ` <iframe frameborder="0"
src="https://itch.io/embed-upload/15043973?color=333333"
allowfullscreen
width="640"
height="380"> <a href="https://darkwoodcom.itch.io/darkwaar1">Play Darkwaar1 on itch.io</a></iframe> `;
context.gameHtml = iframe; return context;
// HtmlFlow → Variable = gameHtml
Here, the JavascriptFlow creates an iframe (e.g. to an itch.io game) and stores it in gameHtml. The HtmlFlow retrieves this variable and displays it directly, without an internal iframe, thanks to secure client-side rendering.
🔒 Secure HTML rendering
HtmlFlow is not a simple dangerouslySetInnerHTML. It applies custom DOM filtering, specifically designed to allow embeds (iframe, simple markup) while blocking XSS attacks or CSS injections.
Among the rules applied:
- Removed dangerous tags (
script,object,embed,form,button, etc.) * Removedon*(e.g.onclick) andstyleattributes * Strict URL checking (https:or relative only) * Cleaned upiframe: only safe attributes (src,width,height,frameborder,allowfullscreen,sandbox) are kept * Automatically added a safe sandbox on iframes * SSR protection: no server-side execution * Memoization and size limits to avoid excessive rendering
These safeguards ensure a balance between flexibility and security, ideal for integrating visualizations or games without compromising the stability of the flow.
🎮 Darkwaar – Towards a playable puzzle game
Meanwhile, the Darkwood universe continues to take shape. I've started several prototype puzzle games, playable directly on itch.io, exploring different mechanics:
- Strategic placement on a grid,
- Turn-based and pawn management,
- Logic resolution (find the next winning move).
These prototypes allow me to quickly iterate on the gameplay before stabilizing a main version. The short-term goal: a playable puzzle in web format, accessible to all from itch.io.
🌐 Uniflow × Darkwaar – Native integration via HtmlFlow
Thanks to the new HtmlFlow component, I was able to directly integrate the four Darkwaar projects into Uniflow. Each of the prototypes is now visible from a dedicated flow on uniflow.io/flows.
This integration concretely demonstrates how Uniflow can serve as a creative hub: flows become modules capable of orchestrating, displaying and hosting interactive creations — in this case, Darkwaar games — in the same environment.
💡 This approach paves the way for a space where automation and playful creation come together. > Every Darkwaar prototype is a flow, and every flow can become a playable experience.
🔗 Useful links
- 🧩 Uniflow 1.1.18 — Read the release on GitHub
- ✨Full technical article — HtmlFlow on the Uniflow blog
- 🎮 Prototypes Darkwaar — Available on uniflow.io/flows
- 🌑 Darkwood — darkwood.com
🔮 And after?
Future versions of Uniflow will continue to explore the visual and interactive dimension of flows:
- secure integration presets (itch.io, YouTube, dashboards), * advanced visualization components, * and natural connection between automation, gaming and art creation.
Darkwaar, for its part, will follow suit. The goal remains the same: to build a coherent universe where programming, imagination, and play meet.
✍️ Mathieu Ledru Darkwood – Automaton. Create. Play. Music
🎁 I offer free 30-minute coaching sessions to help creators like you automate their processes and save time ⏱️
👉 Book your free session here: https://www.bonzai.pro/matyo91/lp/4471/je-taide-a-automatiser-tes-process
Thanks for reading! Let's create smart, fast, and automated workflows together 💻⚡