Skip to content

# Readme

ejabberd is an open-source, robust, scalable and extensible realtime platform built using Erlang/OTP, that includes XMPP Server, MQTT Broker and SIP Service.

Check the features in ejabberd.im, ejabberd Docs, ejabberd at ProcessOne, and the list of supported protocols in ProcessOne and XMPP.org.

## Installation

There are several ways to install ejabberd:

- Source code: compile yourself, see COMPILE
- Installers:
- ProcessOne Download Page or GitHub Releases for releases.
- GitHub Actions for master branch (`run`/`deb`/`rpm` for `x64` and `arm64`)
- Docker Containers:
- `ecs` container image: Docker Hub and Github Packages, see ecs README (for `x64`)
- `ejabberd` container image: Github Packages for releases and master branch, see CONTAINER (for `x64` and `arm64`)
- Using your Operating System package
- Using the Homebrew package manager

More info can be found in the `Installation` part of ejabberd Docs.

## Documentation

Please check the ejabberd Docs website.

When compiling from source code, you can get some help with:

    ./configure --help
    make help

Once ejabberd is installed, try:

    ejabberdctl help
    man ejabberd.yml

## Development

Bug reports and features are tracked using GitHub Issues, please check CONTRIBUTING for details.

Translations can be improved online using Weblate or in your local machine as explained in Localization.

Documentation for developers is available in ejabberd docs: Developers.

There are nightly builds of ejabberd, both for `master` branch and for Pull Requests:

- Installers: go to GitHub Actions: Installers, open the most recent commit, on the bottom of that commit page, download the `ejabberd-packages.zip` artifact.
- `ejabberd` container image: go to ejabberd Github Packages

Security reports or concerns should preferably be reported privately, please send an email to the address: contact at process-one dot net or some other method from ProcessOne Contact.

For commercial offering and support, including ejabberd Business Edition and Fluux (ejabberd in the Cloud), please check ProcessOne ejabberd page.

## Security

For information on how to report security vulnerabilities, please refer to the SECURITY.md file. It contains guidelines on how to report vulnerabilities privately and securely, ensuring that any issues are addressed in a timely and confidential manner.

## Community

There are several places to get in touch with other ejabberd developers and administrators:

- ejabberd XMPP chatroom: ejabberd@conference.process-one.net
- GitHub Discussions
- Stack Overflow

## License

- ejabberd is released under the GNU General Public License v2 (see COPYING)
- ejabberd translations under MIT License.