Awesome
MongooseIM platform
- Getting started
- Developer's guide
- Packages
- Product page: https://www.erlang-solutions.com/products/mongooseim.html
- Documentation: https://esl.github.io/MongooseDocs/
- Try it now: https://trymongoose.im
Get to know MongooseIM
MongooseIM is a robust, scalable and efficient XMPP server at the core of an Instant Messaging platform aimed at large installations.
<img align="left" src="doc/MongooseIM_logo.png" alt="MongooseIM platform's logo"/>Designed for enterprise, it is fault-tolerant, can utilise the resources of multiple clustered machines, and easily scales for more capacity by simply adding a box or a VM.
MongooseIM can accept client sessions over vanilla XMPP, REST API and SSE, as well as Websockets, and BOSH (HTTP long-polling).
As a platform, MongooseIM includes several server-side (backend) and client-side (frontend) components.
We provide a test suite, metrics, a load testing platform, and a monitoring server. We recommend third-party, open source client libraries for XMPP and REST API.
It is brought to you by Erlang Solutions.
MongooseIM platform components:
<img src="doc/MongooseIM_Platform_components.png" alt="MongooseIM platform schema" />Learn more:
- Home: http://github.com/esl/MongooseIM
- Product page: https://www.erlang-solutions.com/products/mongooseim.html
- Documentation: https://esl.github.io/MongooseDocs/
Download packages
For a quick start just download:
- The Docker image (source code repository)
- The Helm chart (source code repository)
- The pre-built packages that suit your platform (Ubuntu, Debian, CentOS compatible: AlmaLinux and Rocky Linux)
Public testing
Check out our test results:
- CI testing:
- Code coverage:
Documentation
See the documentation for the latest releases:
- Master
- 6.3.0
- 6.2.1
- 6.2.0
- 6.1.0
- 6.0.0
- 5.1.0
- 5.0.0
- 4.2.0
- 4.1.0
- 4.0.1
- 3.7.1
- 3.6.2
- 3.5.0
- 3.4.1
- 3.3.0
- 3.2.0
- 3.1.1
- 3.0.1
MongooseIM documentation highlights:
When developing new features/modules, please make sure you add basic documentation to the 'doc' directory, and add a link to your document in 'mkdocs.yml'.
- Tutorials. Learn how to:
- User Guide. Learn all about how to use MongooseIM in your project. Explore its features, supported XEPs, RFCs and database backends, as well as its architecture and deployment strategies.
- Configuration. Explore available options including database backend configuration, access control lists, listener and extension modules.
- REST API. Explore MongooseIM features using our REST API and Swagger documentation.
- Operation and maintenance. See what to consider when building, monitoring, testing and distributing MongooseIM clusters.
- Server developer's guide. Get all the information you need to expand the MongooseIM platform.
Participate!
Suggestions, questions, thoughts? Contact us directly:
- Raise a GitHub issue
- Email us at <a href='mailto:mongoose-im@erlang-solutions.com'>mongoose-im@erlang-solutions.com</a>
- Follow our Twitter account