Grub Chat

Loading Gibberish…
Frame state (dev view)
bundle: loading…
moderation queue: —
The goal of Grub is to create safe and delightful chat messages. Grub ain't for gooder grammer.
Gibberish (the vocabulary) is fetched from GET /api/grub/bundle and compiled in the browser. Favorites are kept in memory for this demo — swap the store for localStorage in production. Nothing is sent anywhere: there is no send endpoint yet.
The player list (@mentions) is a client-side placeholder for this demo — a real client would get the room's names from its game server. Typing @ takes over the suggestion chips above with matching names, plus @everyone. A mention at the front or the back of a message rides along while the words between are judged as usual (hey @zolt, @zolt gg, @zolt alone). Under the hood a name is the Gibberish's @user tag — that is all the server ever sees, and the client swaps the name back in — so no name passes through the vocabulary. Any other @ goes yellow.