gomuks logo

gomuks

Lightweight Matrix client built with Go and mautrix

A Matrix protocol client written in Go, offering web-based messaging with plans for terminal interface support. Built on the mautrix framework for decentralized communication.

gomuks banner

Overview

Modern Matrix Client in Go

gomuks is a Matrix protocol client engineered in Go using the mautrix framework, designed for users seeking a lightweight alternative to heavyweight chat applications. Currently focused on web-based deployment, the project is evolving from its terminal UI roots to deliver a modern web interface while maintaining plans to reintroduce terminal frontend support.

Built for Decentralized Communication

Leveraging the Matrix open standard, gomuks enables encrypted, federated messaging without vendor lock-in. The Go foundation ensures efficient resource usage and cross-platform compatibility, while TypeScript powers the current web interface. The project targets developers, privacy-conscious users, and teams requiring self-hosted communication infrastructure.

Deployment and Community

gomuks operates under the AGPL-3.0 license and maintains active community support through its Matrix room. The architecture separates backend Go logic from frontend TypeScript, enabling flexible deployment scenarios. Documentation and installation guidance are available through the official docs portal, supporting both casual users and system administrators deploying Matrix infrastructure.

Highlights

Built on mautrix framework for robust Matrix protocol support
Web-based interface with planned terminal frontend
Lightweight Go backend with TypeScript frontend
AGPL-3.0 licensed for transparent, community-driven development

Pros

  • Efficient resource usage thanks to Go implementation
  • Active development with clear roadmap for terminal UI
  • Native Matrix protocol support via mautrix library
  • Strong community presence with dedicated Matrix room

Considerations

  • Terminal interface currently unavailable in active branch
  • Smaller feature set compared to Element or other mature clients
  • Limited documentation beyond official docs portal
  • Web-first focus may not suit terminal-only workflows yet

Managed products teams compare with

When teams consider gomuks, these hosted platforms usually appear on the same shortlist.

Chanty logo

Chanty

Team chat and collaboration with channels, audio/video calls, and task management

Discord logo

Discord

Voice, video, and chat communities for groups and teams

Mattermost logo

Mattermost

Secure collaboration and messaging for mission-critical teams

Looking for a hosted option? These are the services engineering teams benchmark against before choosing open source.

Fit guide

Great for

  • Users seeking lightweight alternatives to Electron-based Matrix clients
  • Teams deploying self-hosted Matrix infrastructure
  • Developers familiar with Go wanting to contribute to Matrix ecosystem
  • Privacy-focused users requiring AGPL-licensed communication tools

Not ideal when

  • Organizations requiring enterprise support contracts
  • Users needing rich media features found in mainstream clients
  • Teams dependent on terminal-only interfaces immediately
  • Non-technical users seeking polished consumer chat experiences

How teams use it

Self-Hosted Team Communication

Deploy gomuks on internal infrastructure for encrypted team messaging without third-party dependencies

Lightweight Matrix Gateway

Run resource-efficient Matrix client on low-spec servers or edge devices

Privacy-Conscious Messaging

Leverage AGPL transparency and Matrix federation for auditable, decentralized communication

Matrix Protocol Development

Use mautrix-based codebase as reference for building custom Matrix integrations

Tech snapshot

Go49%
TypeScript44%
CSS4%
JavaScript2%
NSIS1%
Shell1%

Tags

matrix-orgmatrixtuigolangmatrix-client

Frequently asked questions

What happened to the terminal interface?

The terminal UI is on the master branch. The active branch focuses on web, with plans to reintroduce terminal support in the future.

Which Matrix features does gomuks support?

gomuks uses the mautrix framework for Matrix protocol implementation. Specific feature parity depends on the mautrix library version and active development.

Can I self-host gomuks?

Yes, gomuks can be deployed on your own infrastructure. Consult the official documentation at docs.mau.fi for installation instructions.

Is gomuks compatible with other Matrix clients?

Yes, gomuks implements the Matrix protocol standard and interoperates with Element, FluffyChat, and other compliant clients.

What is the AGPL-3.0 license requirement?

AGPL-3.0 requires that if you modify and deploy gomuks as a network service, you must make your source code available to users.

Project at a glance

Active
Stars
1,543
Watchers
1,543
Forks
131
LicenseAGPL-3.0
Repo age7 years old
Last commit2 days ago
Self-hostingSupported
Primary languageGo

Last synced 2 days ago