github.com/42wim/matterbridge ↗
bridge between mattermost, IRC, gitter, xmpp, slack, discord, telegram, rocketchat, twitch, ssh-chat, zulip, whatsapp, keybase, matrix, microsoft teams, nextcloud, mumble, vk and more with REST API (mattermost not required!)
Open this visualization on its own page →
Contributors
85
Lines of Code
29,084
From
2015-10-23
To
2020-12-31
About 42wim/matterbridge
Matterbridge is a chat gateway written in Go that connects multiple messaging platforms and protocols together, allowing users on different services to communicate in shared channels. The project bridges over twenty protocols including Discord, Slack, Telegram, IRC, Matrix, Mattermost, Microsoft Teams, Rocket.Chat, WhatsApp, XMPP, Zulip, Twitch, Mumble, and others. Despite its name, Mattermost is optional and not required to run the bridge.
The bridge supports several advanced features including message edits and deletions, file and attachment handling, username and avatar spoofing, private groups, thread preservation when possible, and multiple simultaneous gateways for different protocol combinations. Users can configure arbitrary pairings of channels across services through TOML configuration files. The project also provides a REST API that third-party projects can use to integrate additional platforms like Minecraft servers, Reddit, Facebook Messenger, and various game servers.
Matterbridge is available as pre-built binaries for multiple platforms and can be deployed via Docker or as a systemd service. The project maintains an active development community across its supported platforms and welcomes contributions. Building from source requires Go 1.18 or newer, though building with all bridges enabled requires significant RAM; optional build tags allow disabling heavier dependencies like Microsoft Teams support to reduce compilation requirements.