Sazlo

A joint venture of Vaylo Studios and AEDELRIC Studios

Spaces, rooms, voice and presence.People belong here.

Sazlo is a realtime community platform on the web, desktop, iOS and Android, with the phone apps coming soon to the App Store and Google Play. Not a reskin and not a clone: built from a Rust core up.

Night Shift Studio

128 online

Start here

  • rules

    accept to post

  • introductions

Community

  • general

    3 new since you left

  • build-log

    2 solved today

  • Hangout
    • Mina
    • Rafa
    • Juno
  • Friday AMA

    starts in 20 min

A space is a community.Rooms are where it talks.

Text rooms, forums with solved posts, voice rooms you drop into and stages with an audience, grouped into sections. New members accept the rules before they post. Coming back after a while, Catch Up shows what moved.

Presence is live and private by choice: who is in voice, who is around, and nothing more than each person decides to show. Names are synthetic here. Every behavior is built.

4

platforms: web, desktop, iOS, Android

50+

permissions, each one explainable

23

no-code bot templates

0

IDs needed for normal use

Everything a community needs, built in instead of bolted on.

01

Spaces and rooms

Text, voice, stage, forum and media rooms in sections, folders and sides. Roles with over 50 permissions, and an access check that shows the exact steps behind any yes or no.

02

Voice, video and stages

Voice rooms you drop into, video and screen share, stages with speakers and an audience, soundboards, activities in calls, and direct calls that ring on the phone’s own call screen.

03

Messaging

Threads, forums, polls, docs, voice messages, scheduled sends, search with filters, an inbox across every space, and end-to-end encrypted direct conversations.

04

Home and Discover

Every space gets a Home: blocks, or a fully custom page in a sandbox. Discover lists public spaces by topic, and public pages are readable without an account.

05

Moving in

Import a Discord or Slack space with its rooms, roles and history, or bridge a live Discord server both ways per room while a community moves over.

06

Bots without code

Rule-based bots from 23 templates, a workflow view, typed commands, forms and modals, plus a reviewed app directory and a bot API for teams who do write code.

07

Community tools

Events with per-date answers and waitlists, forms, courses with quizzes, tournaments with brackets, tasks, projects and private-by-design insights, all built in.

08

Safety that is never paywalled

Safety limits that stop a rogue admin or bot mid-wipe, raid protection, AutoMod, on-device media checks, two-step sign in for moderators and an audit log of everything.

Read every line in the full spec list

A Rust core,and one source of truth.

A modular monolith API in Rust owns every durable record. A separate WebSocket gateway owns sessions, presence and voice state. Web, desktop and phone apps are clients of the same public API, the same one developers and the command line use.

One protocol, defined once

Every frame and event is defined in Rust. The TypeScript the clients use is generated from it, never written by hand, so the server and every app agree by construction.

Durable and ephemeral, kept apart

Messages, roles, permissions and audit records live in Postgres. Presence, typing and voice state never touch it. They live in the gateway, where they belong.

Permissions as a pure function

Role and room overrides resolve in a pure Rust crate with no database access, which is what lets Sazlo explain any decision step by step instead of guessing.

Fan-out over NATS JetStream

The API owns state and publishes events. The WebSocket gateway reads them with an ordered consumer and fans them out to every session, with resume after a drop.

Media on LiveKit

Voice and video run on LiveKit with grants signed by the API, so who can speak, share or watch is decided by the same permissions as everything else.

Privacy as a default

Insights never name a person and withhold counts under five. Translation is never stored. AI runs only with a space’s own key, and only when the space turns it on.

The full stack

Core

  • Rust, edition 2024
  • Axum
  • Tokio
  • SQLx
  • tower-http
  • tracing
  • rustls
  • reqwest
  • ts-rs generated TypeScript
  • UUIDv7 ids

Realtime and media

  • WebSocket gateway on tokio-tungstenite
  • NATS JetStream fan-out
  • LiveKit
  • WebRTC
  • livekit-client
  • @livekit/react-native
  • react-native-webrtc

Data

  • PostgreSQL
  • Embedded SQL migrations
  • Cloudflare R2 over the S3 API

Security

  • Argon2id passwords
  • WebAuthn passkeys
  • AES-256-GCM sealed secrets
  • End-to-end encryption on WebCrypto and noble
  • Web Push with VAPID
  • Signed webhooks

Web

  • Next.js 16 App Router
  • React 19
  • TypeScript
  • Tailwind CSS v4
  • Installable web app

Desktop

  • Tauri 2
  • Signed auto updates
  • Deep links
  • Global shortcuts
  • Native notifications
  • Launch at sign in
  • Window state

Mobile

  • React Native
  • Expo SDK 57
  • expo-router
  • FlashList
  • Self-hosted Expo Updates
  • Native call screen
  • Home screen widgets
  • Share extension

Developers

  • Public REST API
  • OAuth 2 with PKCE
  • Bot API
  • Interaction endpoints
  • Webhooks
  • MCP server
  • TypeScript SDK
  • Rust command line

Services

  • Stripe Connect
  • Resend
  • Sentry without the SDK
  • KLIPY GIFs
  • Anthropic and OpenAI, bring your own key

Ship and test

  • Railway
  • Vercel
  • GitHub Actions
  • Playwright
  • Cargo tests against real Postgres

Two studios.One platform.

Sazlo is a joint venture of Vaylo Studios and AEDELRIC Studios, built and run together. It is not a client project and not a product with a credit line.

Prove what is necessary, not who you are. Normal use never needs a legal name, a government ID or a face scan. Stronger age checks happen only where the law or an age-gated space requires one, and safety tools stay free for every space.

Bring your people.

Free to join and free to run a space. Move a community in from Discord or Slack, or start a new one.