Private community messaging

Chat on a server you run

Trycord is group chat you can run yourself. Communities with their own channels, roles and permissions, one-to-one messages, and moderation that the server enforces rather than the browser. Point a domain at it and invite your group, or join an instance someone else runs.

Studio Twelve
128 members · 4 channels

Channels

# general 3
# showcase
# feedback
# off-topic
Trycord

The server

One process The client, the API, the realtime gateway and this site, all served from one port.

The data

Your database Messages, files and accounts live where you put them. Nothing is mirrored somewhere else.

The door

Your call Registration can be open, approved by an admin, or closed with invites by code.

The source

Open, MIT The whole repository is public and MIT licensed, and the development is in the open.

What a community leans on

Channels and roles, messages and files, presence, moderation and the appeals that follow it. The features page has the whole list, with what is off by default and what is still being built.

Channels

Communities and channels

Each community holds its own channels, and can group them into categories.

Messages that carry the room

Messages, replies, reactions, attachments and search, in channels and one to one.

The people in the room

Presence, typing and notifications, and roles that say who may do what.

Run it yourself

Three commands and a secret

The server is one process and one database file. A fresh install works with the defaults, and the only value you have to set is the signing secret.

your-host:9971
git clone https://github.com/trycord/.trycord.git
cd .trycord
cp .env.docker.example .env
# edit .env and set JWT_SECRET
docker compose up -d

docker compose logs -f          # follow the boot log
docker compose ps               # health status
curl -fsS localhost:9971/api/health

Install the server

Node with SQLite for a small instance, or Docker Compose with MySQL. A fresh install works with the defaults.

Point it at a domain

Set the public URL so links in email and invites are correct, and put a reverse proxy in front of it for TLS.

Invite who you want

Keep registration open, invite by code, or close the instance entirely. The server enforces whichever you choose.

Read the self-hosting guide

Two clients, one code The same client runs in a browser tab and in a desktop window, and on a phone in its own composition.
Enforced on the server Permissions, moderation and rate limits are checked by the server, not by the interface.
A database, not a service SQLite to begin with, MySQL when the community grows, and your data either way.
Bots that act A REST API, a realtime gateway and an SDK, so a community can connect things without a person relaying messages.

Run theserveryourself

There is one official instance, and nothing in the software depends on it. Point a domain at your own, invite your group, and the conversations stay in the database you run.

Night Shift
64 members · 3 channels

Channels

# lounge
# build-log
# music
your-instance

Channels

Your call

Join a community, or run the server yourself.

Open the app to join a community on an instance that already exists, or read the documentation and stand up your own. Either way it is the same software, and the server you are on is the one that holds your data.