EU-hosted realtime for modern apps
Realtime streams carry channel names, presence data, event payloads and app identifiers, which makes hosting location matter. MOJAQ terminates realtime connections in the EU and handles data in Helsinki, with no US transfers and a DPA included, so collaboration tools, dashboards and support systems get a stronger data-sovereignty story without changing how developers build.
Pusher-protocol compatibility
MOJAQ speaks the Pusher protocol, so the Pusher client libraries you already use keep working. You move the realtime layer to an EU host while keeping familiar channel concepts and integration patterns, which keeps migration risk low and the path from evaluation to production short.
const client = new Pusher("MOJAQ_APP_KEY", {
wsHost: "realtime.mojaq.com",
wssPort: 443,
forceTLS: true,
});
client.subscribe("private-orders.123")
.bind("order.updated", (e) => console.log(e.status));Public, private and presence channels
Public channels broadcast where no authorization is needed; private channels gate access through your auth endpoint; presence channels add awareness of who is connected for live, collaborative experiences. That covers the common realtime patterns without running your own WebSocket platform, and it sits alongside error tracking, analytics, uptime, render and flags under one API key.
Questions
Will my Pusher client work?
Yes. MOJAQ implements the Pusher protocol, so the official Pusher client libraries connect after you swap the key and host.
Where is my data handled?
In Helsinki, Finland, in the EU, with no US transfers and a DPA included.
What does it cost?
Free during the open beta, with no fixed end date.
