MongooseIM is a mobile messaging platform with focus on performance and scalability
Erlang JavaScript C Shell API Blueprint Makefile Other
Latest commit 25dd53e Feb 26, 2017 @Nyco Nyco committed with michalwski [skip ci] Slightly updated the roadmap (#1197)
* detail on push
* Bind 2.0
* SASL 2.0
* Mangostas
* Servers in Elixir
Permalink
Failed to load latest commit information.
.github [skip ci] move templates to .github dir and fill the content Feb 29, 2016
apps/ejabberd Fix metrics for MAM lookup. Feb 22, 2017
doc [skip ci] Slightly updated the roadmap (#1197) Feb 26, 2017
examples Cleanup `examples` Aug 20, 2014
priv Finalize rename to MongooseIM Feb 19, 2014
rel Merge pull request #1187 from esl/feature/amazon_sns_support Feb 17, 2017
src rebar3: Enable rebar3 ct Dec 14, 2016
test.disabled/ejabberd_tests Merge pull request #1191 from esl/rock-mod-adhoc-mod-cowboy Feb 22, 2017
tools Introduce prepared queries to mongoose_rdbms. Feb 22, 2017
.gitignore optimise gitignore a bit Jan 25, 2017
.gitmodules Use rebar dependencies instead of submodules for tests Sep 5, 2012
.travis.yml run dialyzer job on Erlang/OTP 19.2 Jan 25, 2017
.travis_deploy_rsa.enc Upload CT-reports to esl github account Jan 26, 2016
CHANGELOG.md improve XEPs nameing in CHANGELOG.md Jan 24, 2017
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 use rebar3 shell to start MongooseIM node Dec 21, 2016
README.md [skip ci] Update README (#1189) Feb 18, 2017
VERSION bump VERSION to 2.0.1 Jan 23, 2017
dialyzer.ignore-warnings added dialyzer targets to makefile Apr 14, 2012
dialyzer.mk Code style improvements Dec 7, 2016
elvis.config Use exml_query:* instead of xml:* Feb 14, 2017
index.html Swagger HTTP API doc (#880) Aug 25, 2016
mkdocs.yml Add documentation Feb 17, 2017
readlink.sh fix compatibility issues with OS X Nov 12, 2014
rebar.config Introduce prepared queries to mongoose_rdbms. Feb 22, 2017
rebar.config.script create Apps list dynamically in rebar.config.script Dec 14, 2016
rebar.lock Introduce prepared queries to mongoose_rdbms. Feb 22, 2017
rebar3 Downgrade Rebar3 to 3.3.2. Jan 30, 2017

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 some 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: