SparkBox / Guides / Matrix Chat

Matrix Chat: open it, first login, settings, fixes

Run your own private chat server with Matrix Synapse and the Element web client. End-to-end encrypted, federated, and Signal-compatible via bridges. A self-hosted alternative to Signal, WhatsApp, and Slack. This is the short card for it — the two minutes after you press Enable, and the page to come back to when something is off.

SparkBox Apps page — one-click install cards for every module
SparkBox Apps page — one-click install cards for every module

Before you turn it on

First run generates homeserver.yaml config. Register admin user after startup via docker exec.

Open it

Dashboard → Apps → Matrix Chat → Open. The direct address on your network is:

http://<your-box-IP>:8448

Create an admin via SparkBox Settings first, then sign in on Element.

SparkBox dashboard login screen
SparkBox dashboard login screen
SparkBox Settings page
SparkBox Settings page

First login

Matrix Synapse doesn't show a setup UI — you create admin users from the command line. SSH into your box and run `sudo docker exec -it sb-synapse register_new_matrix_user -c /data/homeserver.yaml http://localhost:8008` — it'll prompt for a username and password and ask 'Make admin? yes'. Then sign in on Element with that username.

Any password the installer generated for you is under Settings → Passwords; the Open button offers to copy it.

Settings that matter

Change these under Apps → Matrix Chat (or when you enable it):

  • Matrix Server Name — The server name (domain) for your Matrix homeserver

When it breaks

If it will not open, check the app card first — a red dot means it is restarting or unhealthy, and this walkthrough reads the reason from its log. Tom AI on the dashboard can do the same for you.

Where your data lives

/opt/sparkbox/modules/matrix/config/

Included in the dashboard's Backup by default. Restoring that backup on a fresh install brings Matrix Chat back exactly as it was.

Questions, or did this not match your box?

Every guide here came from a real problem someone hit. If yours behaves differently, say so — that is how these get corrected, and how the fix gets prioritised.

Ask in the community →

We answer there rather than in a comment box, because that is where the people who have already solved it are.

About this page: Rendered from the app's own manifest in SparkBox, so the ports, settings and first-login steps match the version you are running. If something does not match what you see, say so in d/sparkbox — the manifest gets fixed and every copy of this page with it.