MongooseIM
MongooseIM is Erlang Solutions' robust, scalable and efficient XMPP server, aimed at large installations. Specifically designed for enterprise purposes, it is fault-tolerant and can utilise the resources of multiple clustered machines.
* [Getting started](https://esl.github.io/MongooseDocs/latest/getting-started/Installation/) * [Developer's guide](https://esl.github.io/MongooseDocs/latest/developers-guide/Testing-MongooseIM/) * [Packages](https://trymongoose.im/downloads#packages) / [Docker images](https://trymongoose.im/downloads#docker) / [Helm charts](https://trymongoose.im/downloads#helm) * Product page: [https://www.erlang-solutions.com/products/mongooseim.html](https://www.erlang-solutions.com/products/mongooseim.html) ... The project is written primarily in Erlang, distributed under the Other license, first published in 2011. It has gained significant community traction with 1,744 stars and 439 forks on GitHub. Key topics include: chat, erlang, hacktoberfest, jabber, messaging.
MongooseIM platform
- Getting started
- Developer's guide
- Packages / Docker images / Helm charts
- 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
- The Helm chart
- 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.7.0
- 6.6.0
- 6.5.0
- 6.4.0
- 6.3.3
- 6.3.2
- 6.3.1
- 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.
- GraphQL API
- User API for development of client applications - see schema documentation.
- Admin API for managing MongooseIM node - see schema 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
Contributors
Showing top 12 contributors by commit count.
