- Updated: March 29, 2026
- 6 min read
In‑Browser Erlang Clustering Demo Empowers Distributed Computing
Erlang clustering lets multiple Erlang nodes join a distributed system, sharing workloads and state, and UBOS’s new in‑browser demo shows how developers can spin up a secure distributed Erlang cluster with just a URL and a few clicks.
Why the UBOS Erlang Clustering Demo Matters for Developers
In the fast‑moving world of distributed Erlang, setting up a cluster has traditionally required a handful of servers, SSH access, and careful network configuration. UBOS has turned that paradigm on its head by delivering a fully functional Erlang cluster that runs inside a browser‑based x86 emulator. This breakthrough not only lowers the entry barrier for developers curious about Erlang clustering but also aligns perfectly with the UBOS homepage mission to democratize AI‑powered infrastructure.
Figure 1 – The UBOS Erlang clustering demo running on a virtual x86 PC in the browser.
Understanding Erlang Clustering
Erlang’s native ability to form a cluster is built on the concept of “nodes” that communicate via the epmd (Erlang Port Mapper Daemon). Each node can execute processes, share data, and recover from failures, making Erlang the go‑to language for telecom, messaging, and real‑time systems.
- Node discovery: Nodes locate each other using a shared cookie and a network address.
- Message passing: Processes send asynchronous messages, guaranteeing fault tolerance.
- Hot code swapping: New code can be loaded without stopping the system.
These capabilities are the backbone of UBOS platform overview, where distributed workloads are orchestrated across cloud and edge environments.
How the In‑Browser Demo Operates
The demo leverages v86, an open‑source x86 emulator written in JavaScript, to spin up a virtual machine directly in the browser. Inside this VM runs a minimal Linux distribution with Erlang pre‑installed. The key steps are:
- Load the emulator and wait for the Linux prompt to appear.
- Enable the distributed mode by checking the “dist” checkbox beneath the terminal.
- Share a URL containing a unique hashtag; other participants open the same URL to join the same virtual network.
- Run
chat:start()to launch a simple chat process that demonstrates inter‑node messaging.
All network traffic is routed through wss://relay.widgetry.org, a WebSocket relay that bridges the isolated VMs. This approach eliminates the need for any external IP address or port forwarding.
Security Considerations for Distributed Erlang in the Wild
“No one in their right mind would run the unencrypted and unauthenticated Erlang distribution unsecured over the internet.” – J. Hogberg, Erlang Core Team
While the demo is a fantastic learning tool, it comes with explicit warnings that developers must respect:
- Plain‑text communication: The demo uses
gen_tcp_dist, which sends data without encryption. Only use it on trusted networks. - Open relay dependency: The WebSocket relay is a public service (
wss://relay.widgetry.org) that you do not control. Treat it as a shared medium. - Cookie exposure: Erlang nodes authenticate using a shared cookie. If an attacker obtains the cookie, they can hijack the cluster.
- Browser sandbox limits: A malicious node could attempt a VM escape, potentially compromising the host browser.
For production workloads, UBOS recommends moving from the demo’s gen_tcp_dist to the encrypted tls_dist module and deploying clusters on dedicated infrastructure. Learn more about secure deployment in the Enterprise AI platform by UBOS.
Step‑by‑Step Guide to Creating Your Own Distributed Erlang Cluster
This guide assumes you have accessed the demo page and see the terminal window.
1. Initialize the Emulator
Wait for the Linux prompt (root@localhost:~#) to appear. The emulator may take 10–15 seconds to boot.
2. Enable Distributed Mode
Check the “dist” checkbox located just below the terminal. This action starts the Erlang node in distributed mode using the default cookie ubos_demo.
3. Share the Cluster URL
Copy the URL from the address bar. It will look like https://demo.ubos.tech/#mycluster123. Distribute this link to your teammates.
4. Join the Cluster
Each participant opens the same URL, enabling the “dist” checkbox on their own emulator instance. The WebSocket relay automatically connects the nodes.
5. Verify Connectivity
Run the following Erlang command in each terminal:
erl -sname node1 -setcookie ubos_demo -eval "net_adm:ping('node2@127.0.0.1'), halt()."
If the output is pong, the nodes are successfully linked.
6. Launch a Sample Chat Process
Enter chat:start(). to start a simple chat server that broadcasts messages across the cluster. This demonstrates real‑time message passing.
For a deeper dive, explore the Web app editor on UBOS to build custom distributed applications that run on top of this cluster.
Extending the Cluster with UBOS AI Integrations
Once your Erlang nodes are communicating, you can enrich them with AI capabilities from the UBOS ecosystem:
- OpenAI ChatGPT integration – Add conversational AI to your distributed services.
- Chroma DB integration – Store and query vector embeddings across nodes.
- ElevenLabs AI voice integration – Enable voice‑driven interactions in your cluster‑based bots.
- Telegram integration on UBOS – Bridge your Erlang processes with Telegram channels for real‑time alerts.
- ChatGPT and Telegram integration – Combine large‑language‑model responses with instant messaging.
These integrations are pre‑packaged as UBOS templates for quick start, allowing you to spin up a fully functional AI‑enhanced distributed system in minutes.
Real‑World Scenarios Where Distributed Erlang Shines
Developers often choose Erlang clustering for workloads that demand high availability and low latency. Below are three scenarios that benefit from the UBOS demo environment:
A. Real‑Time Chat Applications
By leveraging Erlang’s message‑passing model, a chat service can scale horizontally across nodes without a single point of failure. Pair this with the AI Chatbot template to add intelligent responses.
B. Distributed Monitoring & Alerting
Use the AI SEO Analyzer or AI YouTube Comment Analysis tool across nodes to process large streams of data in parallel, then push alerts via the GPT‑Powered Telegram Bot.
C. Edge Computing for IoT
Deploy lightweight Erlang nodes on edge devices, synchronize state via the cluster, and run inference using the AI Image Generator. The UBOS partner program offers co‑marketing opportunities for such solutions.
Pricing, Plans, and Enterprise Support
While the demo is free, production deployments require a subscription to UBOS’s managed services. The UBOS pricing plans include:
- Starter: Ideal for hobbyists and early‑stage startups, includes 5 concurrent clusters.
- Growth: Adds advanced monitoring, TLS‑encrypted distribution, and priority support.
- Enterprise: Offers dedicated VPC, custom compliance (e.g., GDPR, CCPA), and on‑premise deployment options.
Large organizations can also explore the Enterprise AI platform by UBOS, which integrates distributed Erlang with AI pipelines, data lakes, and governance tools.
Ready to Experiment with Distributed Erlang?
Start your own cluster today by visiting the UBOS homepage. Dive into the UBOS portfolio examples for inspiration, and consider joining the About UBOS community to stay updated on new releases.
Whether you’re a startup building a real‑time service or an enterprise modernizing legacy telecom stacks, UBOS gives you the tools to harness the power of Erlang clustering without the traditional operational overhead.
Explore, experiment, and elevate your distributed systems with UBOS today!
For a detailed look at the original demonstration and its technical notes, see the original article.