Everything Skalara does

Messages, voice and video calls, screen sharing and group chats — built to work on Iranian networks, in Persian or English, with nothing to install.

Messaging

Direct messages and group chats, with the things you actually reach for every day rather than a list assembled to look long.

Replies and reactions

Reply to a specific message and the quote travels inside the bubble, so it is clear what you answered. React with an emoji without adding a message.

Voice messages

Hold to record, then listen back before you send it. The waveform is drawn from the actual audio as you speak.

Photos, video and files

Attach what you need. Files are encrypted before they are stored, and served only to people in the conversation.

Search your history

Find a message by what it said. Search runs across the conversations you are in, and keeps looking further back when you ask it to.

Forward and pin

Send a message on to someone else, or pin the one everybody keeps scrolling up to find.

Read state that makes sense

One mark when your newest message has been read. An unread line where you actually left off — and you can mark a conversation unread to come back to it.

Group chats work the same way as a one-to-one conversation: add people, name the group, and everything else behaves identically. When someone joins or leaves, the message that records it keeps the names as they were, so the history still makes sense a year later.

Messages from people you have not spoken to before arrive under Message Requests rather than in your inbox, and you can turn off messages from non-friends entirely. Replying accepts the conversation; ignoring it costs you nothing.

Voice and video calls

One-to-one calls with video and screen sharing, carried directly between the two browsers wherever the network allows it.

  • Voice, video, or both — turn the camera on and off mid-call without dropping anything.
  • Share your screen, a window or a tab, and switch back to camera in a frame rather than a round trip.
  • Mute is instant. Turning the camera off actually releases the device, so the light goes out.
  • The person calling starts negotiating while your phone is still ringing, which is most of the difference between a call that connects immediately and one that starts with "hello? hello?".

Iranian mobile networks put most users behind carrier-grade NAT, which is the exact shape a direct peer-to-peer connection cannot cross. Skalara runs a relay for those calls, because without one two people on mobile data get a call that connects and carries no sound.

Calls are one-to-one today. Group calls need a media server rather than a browser holding one connection per person, which stops working at about four people on a phone — so it is a separate piece of infrastructure and a separate piece of work.

Communities

Servers with channels, the shape you already know — and every part of a message that works in a private conversation works in a channel, because it is the same code underneath rather than a second copy of it.

Channels and categories

Text channels grouped into categories, reordered by dragging the channel itself. A private channel is one nobody can see without a role that grants it, and a category can hold its own defaults.

Roles and permissions

Roles carry a colour, a place in the order and a set of permissions, and any of those permissions can be overridden for a single channel. The name colour someone gets is the highest role that actually has one, so a senior role left grey does not erase the colour below it.

Invites

Invite links with their own expiry and use limits, revocable at any time. Opening one shows the server and its member count before you join, so you know what you are joining.

Moderation

Kick, ban and role changes, each one recorded in an audit log the server owner can read. Removing a message destroys the files attached to it, rather than hiding a message whose files are still stored.

Unread that is worth reading

A channel with something new brightens; a message that names you carries a number. Muting a channel drops the first and keeps the second, because muting means "do not pull me back here", not "I agree to be unreachable".

Mentions

Type @ and search the whole server rather than whatever page of the member list happens to be loaded. Mentioning everybody is a permission of its own, and where it is not granted the word stays plain text rather than announcing that the permission exists.

Voice channels are the one part not finished. They need a media server for the same reason group calls do, so both are waiting on the same piece of infrastructure.

Friends and presence

  • Add people by username. Nobody is found by their phone number, and nobody can be found by guessing an account number.
  • See who is online, idle, in do-not-disturb, or offline — and go invisible, which reports you to everyone else as offline.
  • Block someone and the friendship ends in the same moment, so a block is never half-applied.
  • A username that does not exist and one belonging to someone who blocked you give the identical answer, so neither can be told apart by trying.

Your account and how it looks

  • A display name, an avatar, a banner, a short bio and pronouns — all optional, all yours to change.
  • Profile colours you choose, applied wherever your card appears.
  • Developer mode, which reveals your account number for anyone who wants it. It is off by default because almost nobody needs it.
  • Appearance settings and language, remembered across devices because they live on the server rather than only in one browser.

Persian, properly

Not an English app with the words swapped. The whole interface reads right to left, and the details that usually get missed are the ones that make it feel translated rather than built.

  • Dates in the Jalali calendar, with Persian numerals — in the conversation list, on messages, and on every timestamp.
  • Numbers formatted for the reader, so a count in a sentence is not English digits in a Persian line.
  • The Persian typeface is served from Skalara itself. A font from an unreachable host does not fail loudly, it silently falls back to a face that draws ی and ک in their Arabic forms.
  • Latin text inside Persian — a username, a phone number, a link — is isolated so the surrounding text cannot reorder it. Without that, @poruiya renders as poruiya@.

Safety and moderation

You can report a message, and a moderator sees it in a queue with the message attached. The report keeps its own encrypted copy of what was said, because the author can delete the original — and a report that emptied itself would make deleting the message the way to escape it.

When a moderator removes content, the attached files are destroyed with it. Keeping them as evidence was tempting and wrong: the reason anyone reaches for that button is content that should not be hosted, and a "deleted" message whose files are still in storage has been hidden rather than dealt with.

What is not built yet

Listed here rather than left out, so you know what is coming and know it is not here.

WhatWhere it stands
Voice channelsNeeds a media server, the same one group calls need.
Group callsNeeds a media server. One-to-one calls work today.
Search inside a channelWorks in private conversations today; not yet in channels.
Windows, macOS and Linux appsIn build. The browser version is the same product.
iPhone and Android appsPlanned, after the desktop apps.

Open Skalara

It runs in your browser. All you need is a phone number.

Get started

Privacy policy