Introducing Kivo

Chat your way.

DMs, groups, and communities - all in one place, built around how you communicate.

Kivo - chat your way
Features

Everything for realtime chat

Kivo bundles the core of modern chat — fast, reliable, and community-ready — on one near-black canvas.

Realtime messaging

DMs & group chat

1:1 DMs and small-group chats with cursor-paginated history, optimistic sends, and instant delivery over Socket.IO.

Spaces

Discord-style communities

Spaces with text & announcement channels and role-based permissions — owner, admin, moderator, member — enforced server-side.

Live presence

Typing, receipts & presence

Typing indicators, delivered / read receipts, and live online presence so conversations feel immediate.

Expressive

Reactions, edit & delete

React with emoji, edit after sending, or soft-delete — all synced realtime to every participant.

Stay in the loop

In-app & push notifications

In-app bell plus VAPID web push — you get notified even when the app is closed. DM-focused suppression keeps it quiet when you are already viewing the chat.

Customization

Built to be re-skinned, not just re-colored.

Theming is a first-class system in Kivo, not an afterthought.

One theme object restyles the whole app — canvas, surfaces, borders, bubbles, and motion — with no component edits. Switch live, persist to storage, and keep the same near-black, hairline geometry everywhere.

Single theme objectA single token set drives every surface — restyle once, render everywhere.
Per-user & per-Space themes (planned)Personal and community identity without forking the product — your Space, your palette.
Dark-first, phosphor-spiritNear-black canvas, pale type, hairline borders, minimal shadows — calm by default, expressive on demand.

One canvas. Every surface answers to it.

Theme engine previewLive switch
Framer
Cloud
Sand

{ canvas: var(--canvas),
  ink: var(--ink),
  accent: var(--accent-blue),
  hairline: var(--hairline) }

Tokens flow through CSS variables — no hardcoded colors, no per-component overrides.

Security

Built security-first

Kivo's auth and validation are implementation details you can verify — not marketing claims. Short lifetimes, server-owned sessions, and strict boundaries keep trust measurable.

Custom auth — no third-party provider

Email + password with bcrypt hashing, owned entirely by Kivo. No external identity dependency to leak scope or session control.

15-minute access, httpOnly refresh

Short-lived JWT access tokens in the Authorization header, refreshed silently via an httpOnly cookie. Even if an access token leaks, its window is minutes.

Server-tracked sessions & force-logout

Every refresh token is backed by a Session document with TTL. Users can log out everywhere; admins can force-logout any account — revocation is real, not client-side.

Zod at every boundary

HTTP bodies, query params, and route params are validated server-side with Zod. First error wins with a clear VALIDATION_ERROR — the client is never trusted.

Rate limiting, Helmet headers, secure CORS, and never exposing stack traces or secrets in production complete the picture. Security is the foundation — not a feature.

Roadmap

Shipped & coming next

What you can use today and what is being built next. No dates — these move when they are ready.

Shipped

LIVE
  • DMs — 1:1 private conversations
  • Groups — private multi-member chats
  • Spaces & Channels — text / announcement, role-based
  • Notifications — in-app bell + VAPID web push
  • Phase 1 voice — LiveKit backend wired

Coming next

NEXT
  • DM & group voice calls
  • Voice channel frontend
  • Attachments — images & files
  • Message threads
  • 2FA — second-factor authentication

Roadmap items are factual and update-friendly — check back as milestones ship.