Bubblegum
A quick, animated messaging app.
What's in Bubblegum
Bubblegum has direct and group chats with replies, reactions, mentions, files, link previews and read receipts, plus profile cards, conversation details and settings. Realtime runs on mock data, ready for your own backend.
Inbox
Direct and group chats with unread counts, pinning, muting, filters and a strip of who's online.
Conversation
Replies, reactions, emoji, @mentions and link previews. Drop or paste photos and files, edit, delete and pin messages, and see typing indicators and read receipts.
Conversation details
Members, pinned messages, shared photos and files, and controls to mute, pin or add people.
Profile cards
Click a name or avatar to see someone's role and status, then message them.
Search
A ⌘K palette that finds conversations, people and messages.
Settings
Profile, theme, message and desktop notification preferences.
Sign-in flows
Sign in, sign up, email codes, SSO and password reset. Each can be turned off.
Error pages
404 and 500 pages in the same style as the app.
What's built in
Light and dark themes
Animations with Motion that respect reduced motion
Realtime events behind one subscribe function, ready for Supabase, Pusher or Liveblocks
Optimistic sends, edits and reactions with TanStack Query
Keyboard shortcuts for a new message and search
Emoji picker from Frimousse
Forms with TanStack Form and Zod validation
Mock data layer you can replace with your API

