Skip to main content

The Hublot stack: easy to install, reliable to operate

Hublot relies on a modern, reliable architecture built around open, proven technologies. The goal is to enable a fast rollout, even in modest environments, while offering natural scale as needs grow. The components that make up the stack form a coherent set that is easy to understand, maintain, and evolve.

Hublot, the application core​

Hublot is the central application of the platform. It handles messaging, calls, files, notes, and the overall user experience. Built in TypeScript, it exposes a GraphQL API used by a PWA web client, which removes the need to install software on workstations: a modern browser is enough.

Installation is intentionally simple. A single instance can cover a demo environment or an internal deployment. For organizations that need higher availability, Hublot can be replicated without special changes and placed behind a reverse proxy or load balancer. The application is stateless, which makes clustering easier.

MongoDB, the database​

MongoDB serves as the primary storage system. It keeps structured data: users, messages, collections, metadata, and history. This choice is based on its stability, flexibility, and ability to handle varied volumes without complexity.

For a simple installation, a single MongoDB server is enough. In production, a three-node replica set is recommended to ensure service continuity and simplify backups. MongoDB is widely adopted, which makes hosting, administration, and integration easier.

MinIO or S3, file storage​

Files exchanged through Hublot - images, documents, or attachments - are stored in an S3-compatible service. MinIO is often used for on-premises installations thanks to its ease of deployment and standard API.

This approach brings great flexibility. The installation can be limited to a single MinIO service or evolve to a distributed cluster as data volume grows. It is also possible to use an S3 service hosted by a provider without changing Hublot's configuration. This compatibility ensures no vendor lock-in.

LiveKit, real-time audio and video​

LiveKit is the component responsible for audio and video communications. It handles voice calls, video conferences, and screen sharing, relying on WebRTC, the modern standard for real-time communications.

LiveKit has the advantage of simplicity: it can run on a minimal configuration for small teams while offering smooth scale-up to a more distributed architecture. It guarantees stable audio and video quality, even when network conditions vary.

A modern, scalable, reassuring architecture​

The Hublot stack was designed to offer an optimal balance between simplicity and robustness. Each component can be installed in a minimal way while remaining capable of scaling when needed. The chosen technologies are standardized, well documented, and widely adopted, which ensures long-term viability and easier integration into existing infrastructures.