MCPSERV.CLUB
Rocket.Chat

Rocket.Chat

Self-Hosted

Secure, open‑source team communication platform

Active(100)
43.7kstars
0views
Updated 15 hours ago
Rocket.Chat screenshot 1
1 / 5

Overview

Discover what makes Rocket.Chat powerful

Rocket.Chat is a fully open‑source, TypeScript‑centric communication platform that delivers real‑time messaging, voice/video, and omnichannel support (WhatsApp, SMS, etc.) while maintaining strict data‑protection guarantees. From a developer’s standpoint, the project is built around a modular architecture that exposes a rich REST and WebSocket API, enabling seamless integration with existing enterprise stacks. The codebase is split into a **server** (Node.js/TypeScript) and a **client** (React/Redux), both compiled to JavaScript for broad browser support. The backend leverages MongoDB as its primary datastore, but also offers optional PostgreSQL and MySQL adapters for relational workloads. All data is encrypted at rest using AES‑256, with optional field‑level encryption for sensitive payloads.

Languages

Frameworks

Databases

Messaging

Overview

Rocket.Chat is a fully open‑source, TypeScript‑centric communication platform that delivers real‑time messaging, voice/video, and omnichannel support (WhatsApp, SMS, etc.) while maintaining strict data‑protection guarantees. From a developer’s standpoint, the project is built around a modular architecture that exposes a rich REST and WebSocket API, enabling seamless integration with existing enterprise stacks. The codebase is split into a server (Node.js/TypeScript) and a client (React/Redux), both compiled to JavaScript for broad browser support. The backend leverages MongoDB as its primary datastore, but also offers optional PostgreSQL and MySQL adapters for relational workloads. All data is encrypted at rest using AES‑256, with optional field‑level encryption for sensitive payloads.

Technical Stack & Architecture

  • Languages: TypeScript (server & client), JavaScript, Dockerfile/Compose for containerization.
  • Frameworks: Node.js (Express‑style), React + Redux on the front end, Meteor‑like publish/subscribe model for real‑time updates.
  • Databases: MongoDB (default), PostgreSQL/MySQL via rocketchat-db adapters.
  • Messaging: WebSocket (Rocket.Chat’s own protocol) for low‑latency events, plus REST endpoints for CRUD operations.
  • Containerization: Official Docker images are available on Docker Hub, with Helm charts for Kubernetes and a full Podman support matrix.
  • CI/CD: GitHub Actions pipelines run tests, build Docker images, and publish to npm packages (@rocket.chat/core-typings, @rocket.chat/ui-contexts).

The server exposes a REST API (/api/v1) and a GraphQL gateway for advanced queries. WebSocket events are prefixed with @rocket.chat and can be subscribed to via the /socket.io/ endpoint. All API routes are authenticated using JWT tokens or session cookies, with role‑based access control baked into the middleware stack.

Core Capabilities & APIs

  • Real‑time Collaboration: Channels, private groups, direct messages with end‑to‑end encryption.
  • Omnichannel: Connect external channels (WhatsApp Business, SMS gateways) through adapters; each adapter exposes a standardized webhook interface.
  • Bots & Apps: A plugin SDK (@rocket.chat/apps-engine) allows developers to build modular apps that can register commands, listen to events, and interact with the core via the App API.
  • Extensibility: Themes, custom UI components, and CSS overrides can be injected via the admin panel or by publishing a marketplace app.
  • Webhooks & Callbacks: Incoming/outgoing webhooks are configurable per channel, with payload templates and secret signing for verification.
  • Data Export & Import: JSON export of rooms, users, and messages; import API for migration scripts.

Deployment & Infrastructure

Rocket.Chat is designed to run in any container‑friendly environment. The official Docker image uses a multi‑stage build that produces a lightweight Alpine base, reducing attack surface. For Kubernetes, the Helm chart defines a StatefulSet with persistent volumes for MongoDB or external database instances, and optional TLS termination via Ingress. Air‑gapped deployments are supported by bundling all dependencies into a single image and using the --offline flag during installation. Scaling is achieved by running multiple Rocket.Chat pods behind a load balancer; the underlying WebSocket server uses sticky sessions to maintain user state. Horizontal scaling of MongoDB (via sharding) or PostgreSQL (via read replicas) can be orchestrated separately.

Integration & Extensibility

The Apps Engine is the primary extension point, allowing developers to ship third‑party apps that can:

  • Register slash commands (/hello, /weather)
  • Subscribe to message events (onMessageSent)
  • Access user and room data through typed APIs
  • Persist custom data in the database via IStorage

Additionally, Rocket.Chat exposes a WebSocket API for real‑time monitoring tools and custom dashboards. For legacy systems, the REST endpoints can be consumed by any HTTP client. The platform also supports SAML, OAuth2, and LDAP for SSO, making it a drop‑in replacement for proprietary chat solutions.

Developer Experience

  • Documentation: Comprehensive, versioned docs hosted on docs.rocket.chat with a developer section covering SDK usage, API references, and migration guides.
  • Community: Active GitHub repo with >10k stars, a Slack channel, and an official Discord server.
  • Testing: End‑to‑end tests run via Cypress, unit tests with Jest; CI ensures 80%+ coverage.
  • Configuration: All runtime settings are environment variables; the rocket.chat command-line tool scaffolds new installations and manages upgrades.
  • Licensing: MIT, allowing unrestricted use in commercial projects.

Use Cases

  1. Enterprise Messaging Hub – Replace proprietary SaaS chat with a self‑hosted, GDPR‑compliant solution that integrates with internal LDAP and custom HR APIs.
  2. Customer Support Omnichannel – Expose a unified inbox that pulls conversations from WhatsApp, SMS, and web chat, with bot‑driven routing to support

Open SourceReady to get started?

Join the community and start self-hosting Rocket.Chat today

Weekly Views

Loading...
Support Us

Featured Project

$30/month

Get maximum visibility with featured placement and special badges

Repository Health

Loading health data...

Information

Category
apis-services
License
NOASSERTION
Stars
43.7k
Technical Specs
Pricing
Open Source
Database
MongoDB
Docker
Official
Supported OS
LinuxDocker
Author
RocketChat
RocketChat
Last Updated
15 hours ago