v5.1.0
New
- Live chat streaming UX:
FastCommentsLiveChatmatches the web live-chat widget - compact Twitch-style rows (small avatar + activity dot, bold name inlined with the message), day separators, no per-message dates/reply bar, a red "Live" dot, a composer divider, Ctrl/Cmd+Enter submit, and an in-place save shimmer (no spinner/flicker). - Online users: a red presence dot, an always-on count, and
OnlineUsersFacepile+OnlineUsersListwidgets (Online/Offline sections viagetOfflineUsers,fillsidebar mode). Presence is applied incrementally from websocket frames (add/remove + a debouncedgetUsersInfoenrich) instead of re-fetching the whole list. - Feed parity with the Android SDK:
FastCommentsFeedPostCreate- a standalone post composer (AndroidFeedPostCreateViewequivalent): author header, rich enriched-editor body, media + link attachments, tags (tagSupplier), custom toolbar buttons, cancel/loading/error. Drive it from the feed's store viaonStoreReady, or pass aconfig.- Post rows gain author avatars, rich HTML content, a comment button opening the post's comments (
urlId = "post:<id>", like Android), share, and a delete menu. - Typed image layouts (single full-width, multi-image carousel, link-only action buttons);
config.hideFeedComposer.
- Store access:
onStoreReady(store)on the chat/commenting/feed widgets + the exportedFastCommentsStoretype, so hosts can render store-driven widgets alongside. - Every spinner replaced with a shimmer off one shared animation loop; anchored popovers (GIF/menus) flip above the trigger when there's no room below.
Fixed
- Reliable scroll-to-bottom on live-chat load (no clipped last message); the per-message reply/vote bar no longer wastes vertical space.
- Submit buttons (reply, SSO login, edit save) share one filled style with text-matching icons; the comment menu is a three-dot kebab in both modes.
Full changelog: see CHANGELOG.md.