Managed Platform • Real-time connectivity

The Real-Time Connectivity Mesh for Modern Apps

A managed communication platform that unifies WebSockets and REST APIs into a single, intelligent message bus.

Why use gluer.io?

We handle the infrastructure, connection pooling, and routing so you can focus on building features

🌐 HTTP-to-WebSocket Bridge

Send a standard POST request from any 3rd party tool (Zapier, Webhooks, cURL) and have it processed by your WebSocket workers in real-time.

⚖️ Automatic Load Balancing

Connect multiple backend workers to the same project. Gluer automatically distributes tasks among them.

🔒 Secure Session Management

Built-in session tracking and isolation per project.

🔋 Persistent Connections

No more polling. Maintain full-duplex connections with browsers, mobile apps, and IoT devices.

The Protocol (SMH)

Standard Message Header - A lightweight string header for efficient message routing

Format: Direction:Session:Project:Plugin:Action

{
  "smh": ">:user-123:my-saas:orders:create",
  "data": { "product_id": 99, "qty": 1 }
}

Header Segments:

Direction: > (Request) or < (Response)
Session: Target User ID (or origin ID)
Project: Your unique project slug (e.g., my-saas)
Plugin: Logical grouping (e.g., auth, chat)
Action: Specific command (e.g., login, create)

Connection Endpoints

You don't host Gluer; you connect to it

ActorEndpointProtocolDescription
Frontendwss://ws.gluer.io/ws/:project/:sessionWebSocketBrowsers, React Native, Flutter, IoT.
Backendwss://ws.gluer.io/server/:project/:idWebSocketYour Node.js, Python, Go, or Elixir workers.
API/Integrationshttps://ws.gluer.io/apiHTTPS (POST)External systems triggering actions via REST.

Quick Start

Get up and running in minutes

1 Client-Side Integration (JS/TS)

import { GluerJS } from 'gluer-js';

// 1. Initialize
const gluer = new GluerJS({
  project: 'my-saas',
  url: 'wss://ws.gluer.io' // or your the URL of your local instance of Gluer
});

// 2. Connect
gluer.connect();

// 3. Send a command and await response (RPC style)
async function createOrder() {
  const response = await gluer.sendMsgSync('orders:create', { id: 500 });
  console.log('Order created:', response);
}

2 Backend Worker (Node.js)

const WebSocket = require('ws');

// Connect as a worker
const ws = new WebSocket('wss://ws.gluer.io/server/my-saas/worker-01');

ws.on('message', (msg) => {
  const payload = JSON.parse(msg);

  // Parse Header: >:user-123:my-saas:orders:create
  if (payload.smh.includes('orders:create')) {

    // Process logic...
    const result = { status: 'confirmed', order_id: 999 };

    // Reply to the user (flip direction to <)
    const replyHeader = payload.smh.replace('>', '<');

    ws.send(JSON.stringify({
      smh: replyHeader,
      uuid: payload.uuid, // Maintain UUID to complete the cycle
      data: result
    }));
  }
});

3 The Hybrid Bridge (REST API)

Allow synchronous HTTP calls to interact with your asynchronous WebSocket workers. Perfect for Stripe Webhooks, Zapier, or any external API.

curl -X POST https://ws.gluer.io/api \
  -H "Content-Type: application/json" \
  -d '{
    "smh": ">::my-saas:billing:payment_success",
    "data": { "amount": 5000 }
  }'

What happens?
1. Gluer receives the POST
2. Gluer forwards the message to your WebSocket Worker
3. Worker processes it and sends a JSON response back
4. Gluer responds to the cURL request with that JSON

Built with Battle-Tested Tech

Powered by technologies proven in the most demanding production environments

Erlang/OTP

99.9999999% uptime proven in telecom systems

🔌

Cowboy

High-performance HTTP and WebSocket server

🚀

Rebar3

Modern Erlang build tool and package manager

Download Gluer

Run Gluer locally on your machine. Available for all major operating systems.

Linux

Supports Ubuntu, Debian, Fedora, and more

x64ARM64
Download for Linux

Quick Start

chmod +x gluer_cli_linux./gluer_cli_linuxorPORT=8080 ./gluer_cli_linux

macOS

For macOS 11 and later

IntelApple Silicon
Download for macOS

Quick Start

chmod +x gluer_cli_macos./gluer_cli_macosorPORT=8080 ./gluer_cli_macos

Windows

Windows 10 and Windows 11

x64
Download for Windows

Quick Start

.\gluer_cli_windows.exe

Need help installing? Check out our installation guide

Ready to Build Real-Time?

Start connecting your WebSocket clients to REST APIs with zero latency today.