How ChatLite works

ChatLite is a web app that connects two browsers. Understanding which parts go through ChatLite's server and which go straight between the browsers explains why some things work when others do not.

Two kinds of connection

Every ChatLite session keeps a connection to ChatLite's server. The server shows who is online, passes the setup messages that browsers need to find each other, and delivers messages when a direct connection is not available. Separately, ChatLite tries to open a direct WebRTC connection between the two browsers.

What happens when you start

Starting creates a random anonymous user ID and stores it with your nickname in your browser. There is no sign-up. Your ID is what an invite link carries, and adding a friend creates a one-to-one conversation on your device and notifies the other person's device.

Where conversations live

Conversations, messages and received files are stored in the browser's own storage on each device. ChatLite's server does not keep a history that you can restore. When a recipient is offline, the server holds undelivered items only for a limited time: in memory (up to 50 per user, cleared when the server restarts) or, for devices linked to an account, in its database for up to 14 days.

Optional accounts and notifications

An account is never required to chat. If you create one, ChatLite stores your e-mail address, a hashed password and your linked devices so that several devices can receive new messages. If you enable notifications, your browser registers a push token with Google Firebase Cloud Messaging so that you can be notified while offline.

What ChatLite does not do

Next steps

The guides show each of these in practice, and the data handling page lists what is stored and shared in detail.