Coming from Slack or Discord

If you already live in a team chat app, you know most of this. The ideas are the same; the words and the controls are different, and IRC gives you a lot of control for free.

Slack and Discord terms, mapped

In Slack or DiscordOn IRC with Textce
Workspace or serverA network, such as Libera.Chat or EFnet. The sidebar shows every network you are on, each with its own Status view.
ChannelA room, written #name. Join with /join #name.
Private channelA room locked with a key (+k) or invite-only (+i). See the next section.
Direct messageA private chat: /msg nick text or the Msg button beside the member list.
@mentionType the person's nickname; press Tab to complete it. Mentions are highlighted and can notify.
@here / @everyoneThere is no equivalent. Rooms are conversations, not announcements to everyone.
Roles and permissionsModes. Op (@) is a moderator, voice (+) is a speaker role.
Channel descriptionThe topic: /topic #room text.
Read-only announcements channelA moderated room (+m) where only ops and voiced people can speak.
Timeout, mute, ban, kickModerate the room (+m), then kick and ban. People can also ignore someone on their side.
Invite linkThe room name, an irc:// link, or /invite nick #room for locked rooms.
Status and presenceMark yourself away with /away reason. Friends lists show who is online on supported apps.
ThreadsNo threads. Start your reply with the nickname, like bram: yes!, to keep the thread of conversation.
Emoji reactionsNo reactions. Type the emoji in a message instead.
Bots and integrationsBots join rooms like any other person, and answer to commands you type in the room.
Message historyScroll-back in the app, plus an optional Session Keeper that listens while you are away and summarizes what you missed.
NotificationsRestrained: mentions, private messages and invitations. Per-room sound settings let you quiet the rest.
Sign-inA nickname. No account, no email. Optionally register it with network services.

Tasks you already know, the IRC way

I want to…Slack or DiscordIRC with Textce
Make a private channelNew channel → PrivateRoom with +i (invite only) or +k (password)
Add someone to itAdd people to the channelInvite: /invite nick #room
Protect a channel with a passwordNot availableKey: /mode #room +k password
Set the channel descriptionEdit channel detailsTopic: /topic #room text
Stop everyone from postingAnnouncement channelModerated: /mode #room +m
Let a few people postRole permissionsVoice: /mode #room +v nick
Promote a moderatorAssign a roleOp: /mode #room +o nick
Remove someoneKick or removeKick: /kick nick reason
Block someone from returningBanBan: /mode #room +b nick!*@*
Limit the size of a channelNot availableLimit: /mode #room +l 50
Look up a personView profileWhois: /whois nick
Tell people I am awaySet statusAway: /away reason
Different by design. Because IRC rooms are shared across a whole network, a few things work differently from a team app. Anyone can try joining a public room, there is no central person who owns your account, and nothing is stored for you unless you set up a Session Keeper. In exchange you get no accounts, no tracking and a protocol that has been running since 1988.

IRCv3 explained

IRCv3 is a set of modern extensions to IRC. It keeps the original protocol, so old and new networks still talk to each other, and adds the conveniences people expect from chat today.

When Textce connects, it asks the server which extensions it supports (this exchange is called capability negotiation) and turns on the ones that are available. You do not configure anything. What you can use depends on the network, so one network may support more than another.

IRCv3 featureWhat it does for you
SASLSign in to your registered nickname while connecting, so you are identified before you join any room. No separate password message and no moment where your nickname is unprotected.
server-timeMessages carry the time the server received them, so timestamps stay accurate even after reconnecting or replaying history.
message-tagsLets messages carry extra data, which other features build on.
echo-messageYour own sent messages are confirmed by the server, so you can see they were delivered exactly as others see them.
batchGroups related lines, such as a block of replayed history, so they show up together instead of scattered.
chathistoryLets the network replay recent messages when you connect, so there are fewer gaps. Supported on some networks only.
away-notifyTells you when someone marks themselves away or comes back, without querying each person.
account-notify and extended-joinShows which registered account someone is using as they join, making it easier to tell real users from impostors.
multi-prefixShows all of a person's statuses at once, such as both op and voice.
chghostUpdates someone's displayed address when it changes, without making them appear to leave and rejoin.
invite-notifyTells ops when someone is invited to their room.
monitorNotifies you when friends come online or go offline. This is what powers friends lists.
setnameLets people update their display name without reconnecting.
cap-notifyLets a network add or remove features while you are connected.
Compatibility. Textce keeps IRCv3 compatible with older networks. On a network that does not support a feature, Textce simply falls back to normal IRC behavior; you still chat as usual.

Textce features in practice

New messages and unread rooms

  • A new-message marker draws a line where you left off, so you can see exactly what you missed.
  • In busy rooms, jump back to the first unread message.
  • Unread indicators light up rooms with new activity in the sidebar. Rooms you have read stay quiet.
#hangout
2:48ada…and that is how the first network ran
————— New messages —————
2:52bramback again
2:52cedaryou were gone?
The marker shows where you left off.

Catch-up summaries and the Session Keeper

IRC only shows you messages while you are connected. An optional Session Keeper, also known as a bouncer, stays connected for you while you are away, listening to your rooms. When you reconnect, Textce shows a summary such as “Caught up on 13 missed messages” and the messages keep their original timestamps.

Autocomplete

  • Press Tab to complete nicknames, commands and room names, and use the arrow keys to walk through suggestions.
  • It handles look-alike names gracefully: typing Ale offers Alexandria, Alex and Alexis.
  • Slash commands are completed as you type them.

Notifications that stay quiet

  • You get alerts for name mentions, private messages and invitations, and nothing else by default.
  • Set per-room sound preferences to silence a busy room.
  • Unread messages and important alerts sync across your devices.

Highlights, nicknames and links

  • Highlights collects every mention in one place, across every network.
  • Nicknames are color-coded so you can follow who is who, and joins and quits appear inline.
  • Links in chat are underlined and ready to open.

Themes, text size and devices

  • Choose daylight, midnight or your own colors. Text size and message density are adjustable.
  • Preferences are saved locally on your device.
  • The same rooms are available on phone, tablet, laptop and desktop. On the iPhone app, a Friends list shows who is online and an Ignore list hides people you would rather not hear from.
  • On desktop, use split panes and keyboard navigation to move between rooms.

The member list

Beside every room is its member list. Select a person and use Msg to start a private chat, Whois to see who they are, and, if you are an op, Op, Deop, Voice, Devoice, Ban and Kick. They run the same commands covered in “Running a room”.

Etiquette and staying safe

  • Read the topic first. It usually has the rules and the language of the room.
  • Listen before you talk. Every room has its own culture.
  • Be patient. People may be in other time zones or away from their keyboard. Do not repeat your question every minute.
  • Do not flood. Do not paste long text into a room; use a paste site and share the link.
  • Do not send unsolicited private messages or advertisements.
  • Respect ops. They are volunteers. If you disagree with a decision, ask politely, in private.

Privacy and safety

  • Your address is visible. Anyone can run /whois on you and see your username, host and the rooms you are in. Many networks offer a cloak, which replaces your address with a generic one. Ask the network or use its help.
  • Private messages are not a vault. Do not share passwords, banking details or anything you would not want screenshotted.
  • Be careful with links and files from people you do not know.
  • Services speak only through /msg NickServ and /msg ChanServ. If someone else asks for your password, it is a scam.
  • Report abuse. Tell a room op, or the network's staff in its help room. Keep the nickname and time of the incident.
  • Ignore people who bother you, and leave the room if you need to.