Rocket.Chat

The ultimate free open source solution for team communications

Technologies
javascript, android, ios, node, meteor.js
Topics
machine learning, collaboration, chatops, chat, bot
The ultimate free open source solution for team communications

Rocket.Chat is one of the largest active open source (permissive MIT source license) nodeJS communications platform communities on GitHub, featuring 600+ global community contributors (across projects) from 30+ countries, 15780+ GitHub stars, 3300 forks, 140+ total releases and 6,200+ issues since inception in 2015.

In a world where communication platforms are almost all totally proprietary, privacy-infringing, and centralized (Skype, Slack, WhatsApp, and so on). Rocket.Chat is a breath of fresh air empowering groups around the world to experience a self-hosted, private, distributed and unrestricted communications platform.

Our server is written in NodeJS (server side JavaScript) and utilizes websocket connections to enable real-time interactive rich communications between a variety of clients – including web, mobile (both iOS and Android), and desktop (Windows, macOS, and Linux). Mobile clients are crafted in Swift, Java and Kotlin, we also have a React Native client.

The server is designed to be scalable from a family server on a Raspberry Pi 3, all the way to a cluster of servers for 10s of thousands of communicating users. Its architecture leverages a "modified Kafka’ish optimized MongoDB oplog tailing (single source of truth append-only log) mechanism" to scale across servers in a tunable yet performant manner.

Rocket.Chat has been designed to be totally extensible. REST and realtime (websocket) APIs are available to control and customize various aspects of the server. Extensions can be added modularly using standard node module mechanism.

Chat bots are a popular means of extending the capabilities of Rocket.Chat. Adapters for popular bot framework, such as Hubot, are available and Rocket.Chat’s community published its own integration bots for code platforms including GitHub and Gitlab. Rocket.Chat supports the chat bot and ML, conversational bots, and voicebot communities - with adapters for new bot framework – including the bBot super-bot-framework.

2018 Program

Successful Projects

Contributor
Karan Bedi
Mentor
Rodrigo Nascimento, Pierre Lehnen
Organization
Rocket.Chat
Speech2Text Engine & Voice Recognition API Integration
Integrate an Open Source speech to text engine to be used inside Rocket.Chat by users who prefer an On-Premise full-featured installation. There are...
Contributor
Aniket Singh
Mentor
Lucio Maciel, Filipe Brito
Organization
Rocket.Chat
Android and wear app
The v2+ of the android app of Rocket Chat is already under progress and seems to work well so far. For the summer of code'18, I intend to extend...
Contributor
Nikhil Kaushik
Mentor
Marcelo Schmidt, Martin Schoeler
Organization
Rocket.Chat
Storage integration with Google Drive and/or Dropbox
Integration with Google cloud storage is a long requested feature in Rocket.Chat. This project aims to integrate Google Drive and Dropbox storage...
Contributor
Semih Serhat Karakaya
Mentor
John Szaszvari, Guilherme Gazzo, bjoern
Organization
Rocket.Chat
Integration of Nextcloud/ownCloud as Storage and User File Provider
Enabling Rocket.Chat server administrator to use a NextCloud/ownCloud instance for storage of upload. Integrate NextCloud/ownCloud to Rocket.Chat and...
Contributor
José Renan
Mentor
Diego Sampaio, Guilherme Gazzo, Renato Becker, Diego Sampaio-1
Organization
Rocket.Chat
Rocket.Chat SDK for Javascript Clients
Rocket.Chat has currently some Javascript clients, including Meteor and React Native. Although some of these clients have their own library to...
Contributor
Samar Sunkaria
Mentor
Filipe Alvarenga, Matheus Cardoso
Organization
Rocket.Chat
Adding support for theming the Rocket.Chat app for iOS
The Rocket.Chat team for iOS has been working on improving the UI, and is planning to come out with a major app re-design for version 2.3.0. One of...
Contributor
Mikael Mello
Mentor
John Szaszvari, Tim Kinnane, Diego Dorgam
Organization
Rocket.Chat
Improve the integration of bots on Rocket.Chat
The goal of this project is to develop a UI to monitor and manage existing bot users along with setting the foundations to create and deploy a new...