kink.town

Frequently asked questions

kink.town runs on Movim (the app at kink.town) and XMPP. Your address looks like an email address, for example yourname@ipex.kink.town, and you always sign in with the full address. Tap a question to open it.

For members

Using kink.town day to day.

How do I join a group or a Space?

Joining kink.town (your account)

kink.town is invite only. Your group's leader, or the people running kink.town, will send you an invitation link. Open it, choose a username and password, and your account is created on that group's address, for example yourname@ipex.kink.town. Invitation links work once and expire after 7 days.

Then sign in at kink.town with your full address, not just your username.

Joining a Space

A Space is a group's collection of chat rooms. To join one, you need its invitation key, which looks like xmpp:spaces.ipex.kink.town?;node=…, from someone already in it.

  1. In the Spaces bar on the left (bottom on phones), tap +.
  2. Under Use an invitation key, paste the key and confirm.
  3. You'll see “A request has been sent to a moderator”. A Space owner gets a notification and approves you.
  4. Once approved, the Space appears in your bar, with its rooms.

Waiting a while? Owners are notified, but they might not be online. Ask them directly if it takes too long. Clicking Join again doesn't send a second request.

Can I install kink.town like an app? Why would I?

Yes. kink.town is a web app (a “PWA”): you can install it from your browser, and it then behaves like a normal app.

How

  • iPhone and iPad (Safari): open kink.town, tap Share, then Add to Home Screen.
  • Android (Chrome, Vivaldi, Brave, Edge): open the browser menu and choose Install app or Add to Home screen.
  • Computer (Chrome, Vivaldi, Brave, Edge): click the install icon at the right of the address bar, or find Install kink.town in the browser menu. Desktop Firefox doesn't install web apps; it works fine in a tab.

Why

  • Notifications on iPhone and iPad: Apple only allows web notifications for installed web apps (iOS 16.4 or newer).
  • Its own icon and window, separate from your browser tabs.
  • An unread-count badge on the icon, where your system supports it.
  • It stays signed in like an app, and opens straight into your chats.

The installed app keeps its encryption keys separately from your browser. To the server it's a new device, so give it a moment to set up encryption the first time. See Devices and keys.

How do I get, and control, notifications?

Turning them on

  1. Open Configuration (your profile menu), then Notifications.
  2. Enable push notifications for this device, and allow notifications when your browser asks.
  3. Do this on each device you use. The list there shows which devices are registered; remove old ones you don't use.

On iPhone and iPad, install the app first; Safari tabs can't receive notifications.

Choosing what notifies you

  • Private chats always notify.
  • Chat rooms: open the room's details and choose never, only when mentioned or always.
  • Spaces: one setting covers all rooms in a Space. Open the Space's details and pick the same three options.
  • Space join requests (for owners) notify you and appear under the bell.
  • The bell collects contact requests, Space join requests, and replies or reactions to your posts.

Notifications about encrypted messages say “Encrypted message” rather than showing the text, because the server that sends the notification can't read it.

What are Communities, and how do I use them?

A Community is a feed of posts: announcements, event write-ups, discussion threads with comments. Chat rooms are for conversation; Communities are for things you want to find again later.

Finding them

  1. Open Explore, then Communities servers, and choose pubsub.groups.kink.town. That's kink.town's single Communities server, shared by all groups.
  2. Browse the list and open a Community. Follow it to see its posts in your News feed.

Taking part

  • Depending on the Community's settings you can post, or only comment, or only read.
  • Some Communities are private: you'll need to request access, or be added by an owner.
  • Group leaders create Communities; members can't. Ask your leader if you'd like one.

Community posts and comments are not end-to-end encrypted, and every Community's name is visible to everyone on kink.town, even private ones. Use encrypted chats for anything sensitive. See what isn't encrypted.

What are stories? Are they encrypted?

A story is a photo, with an optional caption, shared with your contacts. Stories appear at the top of the chat screen, and each is shown for 24 hours.

  • Who sees them: your contacts, meaning people on your contact list who've accepted your contact request. Not everyone on kink.town.
  • Encryption: stories are not end-to-end encrypted. They're stored on the server so your contacts can fetch them whenever they come online, and the people running the server could technically see them. The publish screen says so.
  • After 24 hours the app stops showing a story, but the server may still hold the photo. Don't rely on stories disappearing.

For something only specific people should see, send it in a private or group chat. Photos sent there are encrypted.

What can I share with people in other groups?

All groups share one kink.town server, so the group in your address (ipex, iik…) mostly decides where your account lives, not who you can talk to. For example, alex@ipex.kink.town and sam@iik.kink.town:

Can they…Across groups?Notes
Add each other as contactsYesUse the full address; the other person accepts the request.
Chat privately (encrypted)YesSame encryption as within a group.
Call each otherYesVoice and video.
Join the same Space or roomYesWith an invitation key and the owner's approval.
See each other's stories and blogYesOnce they're contacts.
Follow the same CommunitiesYesThere's one shared Communities server.
Talk to people outside kink.townNokink.town is closed: no connection to other XMPP servers.
Create Spaces or CommunitiesLeaders onlyWhatever group they're in.
Move an account to another groupNoAn address can't change; a new account would be needed.
Invite someone into another group's addressNoAccount invitations are per group.

Keep in mind that people in other groups can see the things everyone on kink.town can see: Community names, and anything you've made public.

How do calls work? Nobody can hear me!
  • One-to-one: open a chat and tap the phone or camera icon.
  • In a room: start a call from the room's header. Everyone in the room can join.
  • Large calls: rooms where a leader has enabled the conference server get a Join button, which starts with your camera on. See Call rooms and large calls.

If nobody can see or hear you

Your browser is probably blocking calls (WebRTC) for privacy. It fails silently: you join, but nothing reaches anyone.

  • Vivaldi: Settings → Privacy → enable Broadcast IP for Best WebRTC Performance.
  • Brave: Settings → Privacy → WebRTC IP handling policy: anything other than “Disable non-proxied UDP”.
  • VPN browser extensions (Proton, Mullvad, Nord…): turn off “WebRTC leak protection”, or allow kink.town.
  • Also check that the browser is allowed to use your camera and microphone.
Can I use other apps with my account?

Yes. Your account is a standard XMPP account, so other XMPP apps work with the same address and password:

  • Android: Conversations, Cheogram
  • iPhone and iPad: Monal
  • Computer: Gajim, Dino

They support the same encryption. Each app is a separate device with its own keys (see Devices and keys). Spaces, stories and large calls are Movim features, so use kink.town in the browser for those.

For group leaders

Running a group on kink.town. Leaders are the people who can create Spaces and Communities; ask sudo@kink.town if you think you should be one.

How do I set up a Space?
  1. In the Spaces bar, tap +, then Create a space. (This only appears for leaders.)
  2. Give it a name. You become its owner.
  3. Open the Space and use Add a room (the + next to the room list) to create its rooms: for example #general, #events, #newcomers.
  4. Open the settings (⚙, owners only) to add a picture and description. See Customizing a Space.
  5. Make at least one other trusted person an owner. See Space owners.
  6. Invite people.

Space rooms are members-only and show members' real addresses to each other. That's required for encrypted group chat, so don't change it.

How do I invite someone to kink.town?

New people need an account invitation: a one-time link, valid for 7 days, that creates an account on your group's address.

Leaders create these themselves, for their own group:

  1. Open your group's invitation page, for example https://ipex.kink.town/invites/ for ipex. Use your own group's address.
  2. Sign in with your username only (the part before the @) and your kink.town password.
  3. Optionally suggest a username for them, and tick Add to contact list to become contacts automatically once they join.
  4. Submit. You get a link (and a QR code) to send them.

You can only create invitations for your own group's address. To bring someone into a different group, ask that group's leader, or sudo@kink.town.

Send it privately, and tell them:

  • to sign in afterwards at kink.town with their full address, like name@ipex.kink.town;
  • to keep their password safe: if they lose it, an admin has to reset it.

Once they're in, invite them to your Space.

How do I invite someone to a Space?
  1. Open the Space and its details panel, then Invite new contacts.
  2. Copy the invitation key and send it to them in a private chat.
  3. They add it under Spaces → + → Use an invitation key.
  4. You get a notification, and a request under the bell: “Name is waiting for your approval to join the space”.
  5. Open it and choose Add to the space. That also makes them a member of every room in the Space.

The key is the same for everyone and doesn't expire, so a shared key alone can't let anyone in: every request needs an owner's approval. Deny requests you don't recognise.

Rooms you add later include everyone already in the Space, with the same roles.

How do I make someone a leader, or stop them being one?

“Leader” is set on the server, so the people running kink.town handle it. Message sudo@kink.town with:

  • the person's full address;
  • whether to add or remove them as a leader.

Being a leader only lets someone create Spaces and Communities. Removing it doesn't take away any Space or Community they already own. To change those, use the owner settings below.

How do I make someone a Space owner, or demote them?
  1. Open the Space's settings (⚙).
  2. In the members list, change their role between Member and Owner.
  3. Save.

Owners can change settings, approve join requests, add rooms, and remove or delete the Space. Give every Space at least two owners: an owner can't leave their own Space, and if the only owner disappears, nobody can manage it.

Each room also has its own roles (owner, admin, member), managed from the room's details panel. Making someone a Space owner doesn't make them owner of the rooms; adjust those too if needed.

How do I remove or ban someone from a Space?

Removing someone takes two steps, because a Space and its rooms keep separate member lists:

  1. Space: settings (⚙) → members list → set their role to Remove from the space → save.
  2. Each room: open the room's details and remove them from its members. To keep them out for good, ban them there.

There's no ban at the Space level. If they request to join again, just deny the request.

They keep any messages and files already on their devices. Removing someone stops new access, not past access.

How do I remove someone from kink.town entirely?

Only the people running kink.town can close or block accounts. Message sudo@kink.town with the full address and the reason. It's private, but it helps for making a consistent decision.

Meanwhile, remove them from your Spaces and rooms yourself (see above), and anyone can block them from their own contacts.

How do I customize a Space?

From the Space's settings (⚙, owners only):

  • Picture: tap the current picture at the top.
  • Name and description: shown to members and in invitations.
  • Members and roles: see above.
  • Rooms: add them with the + next to the room list; rename or configure each one from its own details.
  • Destroy: at the bottom. This deletes the Space and all its rooms and history, permanently.

Each member can also pin the Space to their bar, and choose its notification level.

A Space's name, description, picture and member list are not end-to-end encrypted, and every Space name on kink.town can be seen by anyone browsing. Pick a neutral name if the group's existence is itself sensitive. The messages in its rooms are encrypted.

How do I change my group's home page?

Each group can have a home page at its address, such as ipex.kink.town: a description, rules, how to get an invitation, and a sign-in button.

The people running kink.town publish these. Send sudo@kink.town:

  • your group's name and a short description;
  • your rules;
  • how people should ask for an invitation (an email address, for example);
  • optionally, a logo (square image) and a wide header photo.
How do calls work in rooms, and what are large calls?

Normal room calls (small groups)

Anyone in a room can start a call. Each person's device connects to every other one directly, so these calls are end-to-end encrypted. That works well for about 3–4 people; beyond that, phones and slow connections struggle.

Large calls (the conference server)

For bigger meetings, a room owner can switch the room to kink.town's conference server (Galene):

  1. Open the room's settings, or its call panel in a Space, and choose Enable Wide Conference Call.
  2. A conference participant joins the room. Members then use Join to enter the call, camera on by default.

Everyone sends one stream to the server, which passes it on to the others, so many people can take part.

Large calls are not end-to-end encrypted. Audio and video pass through the server unencrypted, so the people running it could technically see and hear them. Use small calls for sensitive conversations.

A good pattern is a dedicated #call room in your Space, with the conference server enabled, for meetings.

How do I create and manage a Community?
  1. Go to Explore → Communities servers → pubsub.groups.kink.town.
  2. Use the + button to create a Community, and give it a name.
  3. Open its settings to set:
    • a description and picture;
    • who can post: only you and chosen publishers, or all followers;
    • who can read: anyone (open), people you approve (authorize), or only people you add (whitelist);
    • roles: add other owners and publishers.

As with Spaces, give each Community at least two owners.

Community posts and comments are not end-to-end encrypted, and every Community's name is visible to everyone on kink.town, including private ones. Private settings hide the posts from other members, but not from the server.

XMPP and Movim basics worth knowing
  • Addresses: everyone is name@group.kink.town. Rooms have addresses too (…@conference.ipex.kink.town). People sign in with the full address.
  • Contacts are mutual: adding someone sends a request they accept. Until then, you can't see each other's online status or stories.
  • Rooms vs Spaces: a room is a single group chat; a Space bundles rooms and handles membership. Rooms can also exist outside Spaces.
  • Room roles: owner (full control), admin (manage members), member (allowed in), banned. Moderators can remove messages.
  • Keep rooms members-only and non-anonymous. Encrypted group chat needs both. If a room is switched to public or anonymous, the server refuses unencrypted messages and encryption stops working there. Nobody can post until it's switched back.
  • History: rooms keep their message history on the server, encrypted, so members see recent messages when they join from a new device. They can only decrypt messages sent after that device joined.
  • Everything stays on kink.town. There's no connection to outside servers, so nobody outside can join, and members can't add outside contacts.
  • Getting help: sudo@kink.town for accounts, leaders, invitations and home pages.

Encryption and privacy

What's protected, from whom, and what the server can see.

What is OMEMO? How is it different from Signal?

OMEMO is the end-to-end encryption used by XMPP apps. It's built on the same core as Signal: the Double Ratchet, which gives every message a fresh key. That means a key stolen later can't unlock past messages, and the conversation recovers its security after a compromise.

On kink.town, encryption is on for every chat, and the server refuses unencrypted messages, so nobody can send something in the clear by mistake.

Differences from Signal

  • Who runs the server: Signal is one central service. kink.town is our own server, run for this community. No phone numbers are involved.
  • Metadata: Signal goes to great lengths to hide who talks to whom. XMPP servers, including ours, do know your contact list, which rooms you're in, and when messages are sent and between whom, even though they can't read them. See what the server knows.
  • Devices: each browser and app you use is a separate OMEMO device with its own keys. Messages are encrypted to each of your devices, and each of your contacts' devices.
  • Group chats: encrypted group chat needs a members-only room where members can see each other's real addresses. All Space rooms are set up that way.
  • Version: kink.town uses the widely supported OMEMO version also used by Conversations, Monal, Gajim and Dino, so encrypted chats work between all of them.
Exactly what is end-to-end encrypted?

“End-to-end” means only the devices in the conversation can read it. The server only ever stores and passes on scrambled data.

  • Private chat messages, one-to-one.
  • Room messages, including all Space rooms.
  • Pictures and files sent in chats: encrypted in your browser before upload; only the people in the chat get the key.
  • Stickers and custom emojis used in a chat message, sent the same way as pictures. (Emoji reactions are not: see below.)
  • One-to-one and small room calls: audio and video are encrypted between the participants, even when relayed through the server to get past firewalls.
  • Message history: the archive the server keeps for syncing holds the encrypted versions only.
What isn't encrypted, and why?

Some things are shared with changing audiences, or have to be readable by the server to work at all. End-to-end encryption needs a fixed set of devices to encrypt for, so XMPP has no practical way to encrypt these. They're protected from other members by privacy settings, but the people running the server could technically see them. The app shows a warning on each of these screens.

Not end-to-end encryptedWhy
Your profile (name, pronouns, email, birthday…), profile picture and bannerShown to anyone who can see your profile, including people who add you later.
Stories and blog postsShared with your contact list, which changes over time.
Community posts and commentsRead by followers who come and go; the server builds the feeds.
Names, descriptions, pictures and member lists of Spaces, rooms and CommunitiesNeeded to list, find and manage them. Names are visible to everyone, even for private ones.
Large calls (conference server)The server combines everyone's streams, so it has to receive them unencrypted.
Emoji reactionsThe encryption apps use only covers a message's text, and a reaction is sent as a separate little signal. The server can see who reacted, with which emoji, to which message, and when, and keeps reactions with the message history. It still can't read the message being reacted to. If the emoji itself would say too much, reply with it instead: replies are encrypted.
“Typing…”, read and delivery receiptsSmall status signals that are sent alongside messages rather than inside them.
Deleting a message (“delete for everyone”)The request to hide it is visible; the deleted message itself stays encrypted. Others' apps may not honour it.

Rule of thumb: if it's in a chat, it's encrypted; if it's posted or shown on a profile, it isn't.

What does the server know about me?

Even when it can't read messages, a chat server has to know who to deliver them to. On kink.town, the server stores:

  • Your account: address and password. Passwords are stored hashed, not readable.
  • Your contact list, contact requests and blocks.
  • Online status: whether you're connected, and when you were last seen.
  • Message metadata: for every message, who sent it, to whom or which room, and when, alongside the encrypted content until deleted.
  • Memberships: which Spaces, rooms and Communities you're in, and your role there.
  • Everything listed under not encrypted, in readable form.
  • Uploaded files: for chat files, only the encrypted data plus size, time and uploader. Other uploads (profile pictures, stories, post images) are readable.
  • Network details: your IP address appears in server logs and in the call relay while you're on a call. Logs are kept for 7 days.
  • Notification devices: which devices are registered for push notifications. Notifications travel through Apple's, Google's or Mozilla's push services, encrypted to your device. Those companies see that you received a notification, and when, but not what it says.

The Movim server (the app at kink.town) holds your session while you're signed in, so it sees the same metadata. It never has your encryption keys. Those stay in your browser.

Devices and keys: why can't I read old messages?
  • Every browser, installed app and phone app you sign in with is a separate device with its own encryption keys. In kink.town, those keys are stored in your browser.
  • A new device can't read messages sent before it existed. Those were only encrypted for the devices you had at the time. That's on purpose: someone who gets into your account later can't read your past messages.
  • Clearing your browser's data for kink.town deletes that device's keys. The browser then becomes a new device, and messages it could read before may show as unreadable. Private browsing windows lose their keys when closed.
  • The first time you sign in on a new device, give encryption a moment to set up before sending your first message.
  • You can see each contact's devices, and their key fingerprints, in the chat's encryption details. Compare fingerprints in person if you want to be sure nobody is impersonating them.
How can I stay safe?
  • Use chats for anything sensitive, not stories, posts or Space descriptions.
  • Use a strong, unique password. Your account is the key to everything above.
  • Sign out on shared computers, and don't use kink.town in private browsing if you want to keep reading your history.
  • Lost a device? Change your password from another device, and tell sudo@kink.town.
  • Remember screenshots exist. Encryption protects messages on the way and on the server, not from the people you send them to.
  • Large calls aren't encrypted: keep sensitive calls small.