Skip to docs

Guide

How to use Kivo

Kivo is a realtime chat app: private DMs, small groups, and Discord-style communities. Live at kivo.usersynax.dev.

What is Kivo

Kivo puts two familiar chat styles in one place: WhatsApp-like private messages and groups, plus Discord-like Spaces with channels. You pick a conversation on the left and chat in the middle. Everything updates live — new messages, typing, online status, and read receipts — without refreshing.

It is a student full-stack project, built to learn real product engineering. It is still meant for real everyday chat: friends, class groups, and small communities.

  • 1:1 DMs with friends
  • Private groups with admins
  • Public Spaces you can discover and join
  • Mentions, reactions, replies, and themes
  • File & image attachments in chat

Create an account

Open Sign up on kivo.usersynax.dev.

  1. Enter a display name, username, email, and password (at least 8 characters).
  2. Confirm the password and submit. You land in chat at /app.

Username must be unique: 3–30 characters, letters, numbers, and underscores. Email must be unique too.

To log in later, use Log in with either your email or username.

To log out, open your profile from the bottom of the sidebar, go to the full profile page, and choose Log out.

The chat layout

After you sign in you see:

  • Left — DMs, groups, Spaces, search, new chat, theme, and your profile.
  • Center — the open conversation.
  • Right — on a wide screen, the other person’s profile in a DM, or group/Space settings when you open them.

On a phone you see the conversation list with a bottom tab bar — Chats, Spaces, and Profile — so it feels like a native app. Open a chat, then use Back in the header to return. The sidebar can be collapsed on desktop; Kivo remembers that, and the last chat you had open. Your lists load instantly from a local browser cache while fresh data arrives.

Friends

Open the + menu in the sidebar and choose Friends. Three tabs: Requests, Friends, Add.

Add someone

  1. Go to Add and search by username, email, or display name.
  2. Click Add on a result.

You cannot friend yourself or send a duplicate request. If they already requested you, accepting makes you friends right away.

Incoming requests

Open Requests, then Accept or Decline. They get a notification when you accept.

Start a private chat

On the Friends tab, click Message. That opens an existing DM or creates one.

Direct messages

DMs are 1:1. Starting chat with the same person again reuses the same conversation.

  1. Find them under Direct in the sidebar, or use the search field.
  2. Click the row. Unread counts show as a badge. A green dot on the avatar means they are online.

Sending messages

The same composer works in DMs, groups, and Space channels.

Send

Type in “Type a message…”, then Enter to send. Shift+Enter adds a new line. Max 4000 characters. If a send fails, retry from that bubble.

Reply

Right-click (or use the message menu) → Reply. A quote preview sits above the composer. Send, or cancel with the X.

React, edit, delete

  • React: message menu → React, or tap a reaction chip under the bubble. Same emoji again removes yours.
  • Emoji in text: smile button next to the composer (270+ emojis, grouped by category).
  • Edit or delete: only your own messages. Edit saves with Enter, Escape cancels. Delete clears the text but keeps the row so replies stay in place. Edited messages show “edited”.

Mention someone

  1. Type @ then the start of their name or username.
  2. Pick from the list (arrows, then Enter or Tab, or click).

Mentions only include people in that chat. They get a “mentioned you” notification.

History, receipts, typing

Scroll up for older messages. Your bubbles show sent → delivered → read. When someone else is typing, you see it in the open chat. Opening a chat marks it read. System lines like “Admin added X” do not add to unread.

File & image attachments

You can share files and images in any DM, group, or Space channel.

Attach a file

  1. Click the paperclip button in the chat composer.
  2. Pick one or more files from your device (images or documents).
  3. Each file shows a preview chip with name, size, and upload progress.
  4. Type an optional caption, then Enter to send.

Allowed types: JPG, PNG, GIF, WebP, PDF, DOC/DOCX, XLS/XLSX, PPT/PPTX, and TXT — max 30 MB each. Multiple files of mixed types can be sent in one message.

View images

  • Click any image thumbnail in chat to open the fullscreen lightbox — centered on screen with a dark backdrop.
  • Use the left/right arrows or keyboard arrows to navigate between images.
  • Click the download button (top right) to save. Press Escape or click the backdrop to close.

View documents

PDF, DOC, XLS, PPT, and TXT files show as download cards with an icon, filename, and file size. Click to open or download.

Group chats

Groups are private rooms for a small set of people — not a Space.

Create a group

  1. Sidebar + → New group (or + next to Groups).
  2. Name it (required). Optional group photo, max 4MB.
  3. Pick at least two friends (you plus two others).
  4. Create. You are the first admin.

Manage the group

Open the group, then Group settings in the header. Admins can rename it, change the photo, add or remove members, and promote or demote admins. Anyone can leave. The last admin cannot be removed or demoted.

Spaces & channels

A Space is a community (like a Discord server). Inside it, channels are separate chat rooms.

Create a Space

  1. Sidebar + → new Space.
  2. Set a name. Optional: description, category, banner, and avatar (max 4MB).
  3. Create. A #general channel is made for you. You are the owner.

Categories include Technology, Design, Education, Business, Gaming, Community, Art, Music, Lifestyle, and Other.

Join a public Space

  1. Sidebar + → Discover Spaces.
  2. Search or filter by category.
  3. Click Join. You enter as a member and get every channel.

There are no invite links. Leave from Space settings; you can rejoin from Discover.

Channel types

  • Text (#) — every member can post.
  • Announcement (megaphone) — only the owner and admins can post.

Roles

Owner → admin → moderator → member. Admin and above can edit the Space, manage members, and create or rename channels. Only the owner can promote someone to admin or delete the Space. You cannot delete the last remaining channel. If the owner leaves, the highest remaining member is promoted.

Profile & themes

Click your name at the bottom of the sidebar to edit profile.

  • Display name, unique username, bio (280), status (60)
  • Photo (PNG, JPEG, WebP, or GIF, max 4MB) and a color frame (Lime, Blue, Rose, Amber, Violet, Ocean, Sunset, Aurora)
  • Optional animated banner

Email cannot be changed here. Full profile at /app/profile also has Log out.

Themes

Use the theme control at the bottom of the sidebar. Switch live — no reload. Choice is saved in this browser.

  • Framer — default near-black, blue accent
  • Cloud — cooler, slightly blue
  • Sand — warmer
  • Ink — neutral near-black
  • Midnight — deep navy

Notifications & install

In-app bell

The bell shows unread count. Open it to see DMs, group and Space messages, mentions, friend requests, and accepts. Click an item to jump to that chat. Scroll for older items. Mark all read clears the badge. Escape or click outside to close.

You are not notified of your own messages. If a DM is already open in front of you, Kivo skips a notification for that DM.

Browser notifications

The first time you open the bell, the browser may ask for notification permission. Allow it if you want alerts when the tab is closed. Kivo does not prompt on first page load.

Install Kivo

  • Chrome or Edge: install icon in the address bar, or the browser menu → Install Kivo.
  • Android: Add to Home Screen / Install app.
  • iPhone: Share → Add to Home Screen.

Installed Kivo opens the chat app. It caches your lists for a fast start, but you still need a network connection to send and receive messages.

Keyboard shortcuts

ActionKeys
Send messageEnter
New lineShift + Enter
Insert mentionEnter or Tab
Move mention highlightArrow up / down
Save editEnter
Cancel edit / close panelEscape

Not built yet

These are not in Kivo today. Do not expect them on kivo.usersynax.dev yet:

  • Search inside messages or conversations
  • Voice or video calls — the backend is wired but there is no call UI yet
  • 2FA (two-factor authentication)
  • Threads, pins, and saved messages
  • Unfriend in the Friends window
  • Private invite links for Spaces
  • Video/audio attachments (images & documents only)
  • Using the installed app fully offline — chat lists are cached, but messages still need the network

Try it live

Open Kivo at kivo.usersynax.dev, create an account, and start a DM or a Space.