MongooseIM is a mobile messaging platform with focus on performance and scalability
Erlang JavaScript C Shell API Blueprint Makefile Other
Latest commit e8765d1 Jan 20, 2017 @michalwski michalwski committed on GitHub Merge pull request #1159 from esl/feature/cassandra-schema-converter
Feature/cassandra schema converter
Permalink
Failed to load latest commit information.
.github [skip ci] move templates to .github dir and fill the content Feb 29, 2016
apps/ejabberd Merge pull request #1147 from esl/muc-light-loop-fix Jan 19, 2017
doc Merge pull request #1139 from esl/xep-0363-http-file-upload Jan 18, 2017
examples Cleanup `examples` Aug 20, 2014
priv Finalize rename to MongooseIM Feb 19, 2014
rel Merge pull request #1139 from esl/xep-0363-http-file-upload Jan 18, 2017
src universal version generator Oct 19, 2015
test/ejabberd_tests Merge pull request #1147 from esl/muc-light-loop-fix Jan 19, 2017
tools Fix translate error in cassandra schema converter Jan 19, 2017
.gitignore Introduce mechanism for specifying inter-module dependencies. Dec 12, 2016
.gitmodules Use rebar dependencies instead of submodules for tests Sep 5, 2012
.travis.yml Use cqerl as cassandra client library Jan 16, 2017
.travis_deploy_rsa.enc Upload CT-reports to esl github account Jan 26, 2016
CHANGELOG.md update CHANGLOG for 2.0.0 Nov 8, 2016
CONTRIBUTING.md [skip ci] added rock to doc Dec 7, 2016
COPYING * src/msgs/nl.msg: Updated (thanks to Sander Devrieze) Oct 9, 2004
Makefile Merge pull request #1029 from esl/elvis-more Dec 12, 2016
README.md [skip ci] Platform schema (#1111) Dec 15, 2016
VERSION bump version to 2.0.0 Nov 8, 2016
dialyzer.ignore-warnings added dialyzer targets to makefile Apr 14, 2012
dialyzer.mk Code style improvements Dec 7, 2016
elvis.config improving elvis regex in order to accept '_' in the middle of a word Dec 15, 2016
index.html Swagger HTTP API doc (#880) Aug 25, 2016
mkdocs.yml Fix mod_http_upload documentation. Jan 11, 2017
readlink.sh fix compatibility issues with OS X Nov 12, 2014
rebar update rebar to 2.6.4-4-g576e121 Sep 26, 2016
rebar.config Improve Cassandra's DB schema Jan 19, 2017
rebar.config.script remove workaround for cowboy and R15B03 Dec 8, 2015

README.md

MongooseIM platform

MongooseIM platform's logo

MongooseIM is robust and efficient XMPP platform aimed at large installations. Specifically designed for enterprise purposes, it is fault-tolerant, can utilize resources of multiple clustered machines and easily scale in need of more capacity (by just adding a box/VM). MongooseIM can accept client sessions over vanilla XMPP, Websockets, HTTP long-polling (a.k.a. BOSH), and a REST API.

The MongooseIM platform comes with server-side components and client libraries. We provide a test suite and a monitoring server. We recommand third-party, open source client libraries for XMPP and REST API.

The most important links:

It is brought to you by Erlang Solutions and Inaka.

Build Status Documentation Status Coverage Status Buildtime trend GitHub release

MongooseIM platform's mongooses faces

Download packages

For a quick start just download:

Public testing

Check out our test results:

MongooseIM platform components

MongooseIM platform schema

Server-side components

We offer a set of server-side components:

  • WombatOAM is a powerful monitoring platform that comes with specific MongooseIM plugins
  • Test suite: in order to test and validate your XMPP servers, here are useful tools:
    • escalus: Erlang XMPP client
    • amoc: a load testing tools
  • More components? It is probable that we will offer:
    • Icicle: ICE, STUN/TRUN server
    • Platypus: a push notification server

Client-side components

  • XMPP client libraries: we recommend following client libraries:
  • REST API client libraries: we recommend following client libraries:

Participate!

In case of any suggestions, questions or any thoughts, please feel free to contact us:

Documentation

Up-to-date documentation for the MongooseIM master branch can be found on ReadTheDocs:

When developing new features/modules, please take care to add basic documentation to the doc/ directory, and add a link to your document in doc/README.md.

The MongooseIM platform documentation: